11 12
发新话题
打印

[问题求助] 如果在Head中不使用wp_head()将如何调用All in One SEO Pack?

如果在Head中不使用wp_head()将如何调用All in One SEO Pack?

在自己修改主题的时候发现Head.php中会调用WordPress的wp_head()函数,这个函数应该是为各个插件留下接口,从而增加不同的javascript和css功能的。但是为了减小数据库查询量,而我的博客不经常更改插件,我想把wp_head()去除,然后把wp_head()调用的js、css文件都放到需要的地方去,这一步已经实现。
现在遇到的问题就是我已经去除了wp_head(),所以All In One SEO Pack插件也只能起到更改标题的作用,无法自动生成mete里的key words和描述,所以请问能否在 head.php 里面插入某个php函数从而调用All In One SEO Pack生成的meta?
谢谢!

TOP

没人知道啊?

TOP

不会撒,我也觉得这个方法可行
怀念1997年的秋天 这里的天空是灰色的,每天坐着一个怀旧的流浪人BBpress

TOP

是啊,如果使用在head.php中使用wp_head(),应该会增加比较多的数据库查询吧,即使不增加数据库查询,使用php函数也要花一定的时间。如果插件不经常变动的话,把插件调用的js和css文件全部写进head.php里更好点,只是All In One SEO Pack这个不知道怎么搞

TOP

引用:
原帖由 littlehz 于 2008-8-8 11:08 发表
是啊,如果使用在head.php中使用wp_head(),应该会增加比较多的数据库查询吧,即使不增加数据库查询,使用php函数也要花一定的时间。如果插件不经常变动的话,把插件调用的js和css文件全部写进head.php里更好点,只是 ...
没必要这么浪费时间吧?

TOP

我试过,在我自己的电脑上建的一个Linux服务器环境模拟,MySQL数据库中有3000篇文章,即使建立一个空白模板,会进行15次查询,耗时0.6秒左右,如果在这个空白模板中加入wp_hea(),会进行大约21次查询,页面执行时间在1.1秒左右
如果插件不经常更改的话干嘛不让它静态化,虽然有wp-super-cache,但是在我的wp中死活都不能开启这个插件,自己把它静态化好了

TOP

复制内容到剪贴板
代码:
<!--标题控制-->
<title><?php if ( is_single() || is_page() || is_archive() ) { strip_tags(wp_title('',true)); echo (' | ') ; } ?><?php if ( is_search() ) { $search_query1 = get_search_query(); echo strip_tags($search_query1).' | ' ; } ?><?php if ( is_404() ) { echo '您输入的网址内容找不到 | ' ; } ?><?php strip_tags(bloginfo('name')); ?></title>
<!--搜索引擎收录控制,避免搜索重复内容降分-->

<?php if (is_single() OR is_page() OR is_home() OR is_category()) : ?>
<meta name="robots" content="index,follow" />
<?php else : ?>
<meta name="robots" content="noindex,follow" />
<?php endif; ?>

<!--SEO简介,描述本页内容-->
<?
    $keywords = "叶歆昊, LittleHZ, Littz, ";
    $description = get_bloginfo('description');
if (is_single() OR is_page()){   
    $description =  $post->post_title . ', ' . $post->post_excerpt;
    $tags = wp_get_post_tags($post->ID);
    foreach ($tags as $tag ) {
        $keywords = $keywords . $tag->name . ", ";
    }
} elseif(is_category()){
    if (strip_tags(category_description())!=\r);
    {$description = category_description();}
}
$keywords=strip_tags($keywords);
$description=strip_tags($description)
?>
<meta name="author" content="http://www.littz.cn/" />
<meta name="copyright" content="LittleHZ,www.littz.cn" />
<meta name="keywords" content='<?php echo $keywords; ?>' />
<meta name="description" content='<?php echo $description; ?>' />
[ 本帖最后由 littlehz 于 2008-8-12 11:59 编辑 ]

TOP

上面是我修改的header.php,完全可以不用任何SEO插件

TOP

完全可以把这些代码放到headseo.php中,然后在header.php调用这段代码
复制内容到剪贴板
代码:
<?php include (TEMPLATEPATH . '/headseo.php'); ?>

TOP

回复 8# 的帖子

对这样是不错,需要的功能用自定义字符也能添加

但这个插件使用时带来的为数不多的几次查询,并不会拖慢速度多少。当然你的日志众多,情况除外。super-cache不能用,你考虑过静态化吗?

或者看看这个http://wordpress.org.cn/thread-17706-1-1.html

TOP

 11 12
发新话题