这个问题有两个部分:
#1
我有一个functions.php,它被填充了函数。我必须滚动才能找到我想要的函数,即使有注释来描述一个函数的结束和下一个函数开始的地方,有时也很难找到我想要什么。
我已经将函数分解为单独的PHP文件,并使用include_once 'assets/functions/author_list.php';
使functions.PHP文件更加干净。
因此,第一个问题是:在functions.php中使用多个includes
会减慢加载时间还是影响前端或后端的站点性能?
#2
第二个问题也是类似的。如果我在函数中有如下函数。
<?php
function ao_post_meta() {
?>
<div class="post-meta">
<time datetime="<?php the_time('Y-m-d'); ?>"><?php the_time('M j, Y'); ?></time>
<?php if('videos' == get_post_type(get_the_ID())) { ?>
<a class="author-link" href="<?php bloginfo('wpurl'); ?>/character/<?php echo get_the_author_meta( 'user_nicename' ); ?>">
<span><?php the_author(); ?></span>
</a>
<?php } else { ?>
<a class="author-link" href="<?php echo get_author_posts_url(get_the_author_meta( 'ID' )); ?>">
<span><?php the_author(); ?></span>
</a>
<?php }?>
<a class="comment-link" href=""><?php echo get_comments_number(); ?></a>
</div>
<?php
}
?>
简单地将其放在一个单独的PHP文件my-post-meta.PHP中,并在我的模板中使用include(mypost-meta.PHP),而不是将其作为函数调用,这样更好吗?
谢谢!
#1是的,会的。但我建议你不要担心,因为:
- 如果你包含的文件数量不多,它的影响就很小,根本看不见
- 主机上有PHP的操作码缓存扩展,可以减少include调用的影响
#2我更喜欢将所有模板提取到单独的phtml文件中,这些文件存储在单独的文件夹中(例如"templates"),并在需要时包含它。它将提高函数的可读性。例如,您将有以下代码:
<?php
function ao_post_meta() {
include './templates/mycustom-template.phtml';
}
?>
总的来说,我的建议如下:
尽量保持良好/直观的文件夹/文件结构,而不是将所有内容放在一个文件中。它将使发展和更容易维护。