扫一扫加微信

WordPress“自定义域”使用实例

wordpress高级应用,的确感觉wordpress是越来越强大了,利用它不仅仅可以做出博客,而且更可以成为内容管理系统。在本文中,收藏一些WordPress 自定义域的技巧和应用。

优化wordpress SEO

<?php if ( is_home() ) { ?>
<meta name="description" content="。。。" />
<meta name="keywords" content="。。。" />
<?php } ?>
<?php if ( is_single() ) { ?>
<meta name="description" content="<?php $key="description"; echo get_post_meta($post->ID, $key, true); ?>" />
<?php } ?>
<?php if ( is_category() ) { ?>
<meta name="description" content="<?php echo category_description(); ?>" />
<?php } ?>

单篇日志和PAGE页面的TITlE优化

<?php if (is_home() ) { ?>首页标题<?php }?>
<?php if( get_post_meta($post->ID, "title_single", true) ): ?>
<?php echo get_post_meta($post->ID, "title_single", true); ?>|站点名称
<?php else: ?>
<?php wp_title(''); ?>|站点名称
<?php endif; ?>

给某一日记添加js或者CSS

假设我们给日志单独加载JS、CSS的自定义域名称是 head_JS_CSS。那么你首先需要把下面这段代码复制到你主题根目录下的 functions.php 文件中:

function head_JS_CSS(){
if (is_single() || is_page()) {
global $post;
$head_JS_CSS = get_post_meta($post->ID, 'head_JS_CSS', true);
echo $head_JS_CSS;
}
}
add_action("wp_head","head_JS_CSS");

现在你在添加日志的时候,在WordPress自定义域区域,创建一个新的名称为:”head_JS_CSS”自定义域,在“值”输入你要单独为这篇日志 加载的 Javascript 代码或者 CSS 即可。

给加密的日志添加密码提示信息

假设我们给日志添加密码提示的自定义域名称是password_hint。那么你首先需要把下面这段代码复制到你主题根目录下的 functions.php 文件中:

function password_hint( $c ){
global $post, $user_ID, $user_identity;
if ( empty($post->post_password) )
return $c;
if ( isset($_COOKIE['wp-postpass_'.COOKIEHASH]) && stripslashes($_COOKIE['wp-postpass_'.COOKIEHASH]) == $post->post_password )
return $c;
//替换
if($hint = get_post_meta($post->ID, 'password_hint', true)){
$url = get_option('siteurl').'/wp-pass.php';
if($hint)
$hint = '密码提示:'.$hint;
else
$hint = "请输入您的密码";
if($user_ID)
$hint .= sprintf('欢迎进入,您的密码是:', $user_identity, $post->post_password);
$out = <<<END
<form method="post" action="$url">
<p>这篇文章是受保护的文章,请输入密码继续阅读:</p>
<div>
<label>$hint<br/>
<input type="password" name="post_password"/></label>
<input type="submit" value="Submit" name="Submit"/>
</div>
</form>
END;
return $out;
}else{
return $c;
}
}
add_filter('the_content', 'password_hint');

然后在你添加日志的时候,在WordPress自定义域区域,创建一个新的名称为:”password_hint”的自定义域,在“值”输入你密码提示: 如xx的生日是几号?

显示日志缩略图

<a href="<?php the_permalink() ?>" title="<?php the_title(); ?>">
<img src="<?php $values = get_post_custom_values("image_thumb"); echo $values[0]; ?>" alt="<?php the_title(); ?>" />
</a>

然后在你添加日志的时候,在WordPress自定义域区域,创建一个新的名称为:”image_thumb”自定义域,在“值”输入你要为本篇日志上传 的图片的 URL。

WordPress添加自定义域提示

我们只需要找到主题文件夹的根目录下的functions.php文件,添加以下代码即可:

function custom_fields_tip(){
$h3 = "欢迎使用自定义域";
$html=<<<END
<div>
<h3>$h3</h3>
<div>
<p>如果你正在发布或编辑一篇受密码保护的文章,建议您添加一个名称为'password_hint'的自定义域.用来提示访客.<br/>使用'head_JS_CSS'可以添加css、js到头部.<br/>使用'image_thumb'可以给文章添加缩略图</p>
</div>
</div>
END;
echo $html;
}
add_action('submitpost_box', 'custom_fields_tip');
add_action('submitpage_box', 'custom_fields_tip');

一个自定义字段中存放多个值

function article_source() {
global $post;
$article_source = get_post_meta($post->ID, article_source,false);
if($article_source) {
foreach ($article_source as $article_sources){
$fullValue = explode ("|", $article_sources);
$name = $fullValue[0];
$address = $fullValue[1];
}
echo '翻译来源:<a href="'.$address.'" target="_blank">'.$name.'</a>,';
}
else {
echo '本文为本站原创,';
}
}

将上面的代码复制到 WordPress 主题目录的 functions.php 中,然后在合适的地方调用这个函数即可。对于翻译的文章,需要给文章添加一个名称为 article_source 的自定义域,里面存放两个值,方式为“网站名|文章地址”。原创的文章则不添加这个自定义域。

下面简单解释一下这段代码。get_post_meta() 这个函数会调用指定自定义域中的值,通过其参数我们可以控制是作为一个字符串 调用还是作为一个数组调用以便接下来的处理,详细的用法请参见函数的说明。我这里使用 false 参数将函数设定为作为数组提取。接下来使用 foreach 语句遍历数组,讲结果存放到一个新的变量中,再用 explode 语句以“|” 符号为标记对其进行切割。最后就是把切割开的值分别存放到两个新的变量中以供提取使用。

有了这个例子,你就可以很方便的修改上面给出的代码来实现自己需要的功能了。

58 评论

1+1=

  1. IPHONE4外壳

    楼主辛苦了 天天写原创文章。希望能再多出点好的文章 这样才能学的更多一点哦。

    回复
  2. AdWords

    打打酱油。。。

    回复
  3. 南京seo

    其实我觉得,看别人的博客能学到的东西还是很多的说

    回复
  4. alexa

    支持楼主。
    A5排名专业提升alexa排名。

    回复
  5. 易购时尚服饰

    呦呦!博客不错嘛。。支持下哈!常来哦!请支持下我的网站吧www.yiguoo.com

    回复
  6. 焉耆第一站

    喜欢文章,看看

    回复
  7. 南京seo

    楼主强大 ,毫不犹豫收藏了 哈哈

    回复
  8. 李学朋

    学习了,以后经常来。

    回复
  9. 柠檬绿茶

    博主好~ 谢谢分享。

    回复
  10. solar-micro-inverter

    不错,支持一下!

    回复
  11. 安防

    博主好啊 顶下! http://www.cctvboda.com

    回复
  12. 有源音箱

    确实不错,呵呵!

    回复
  13. 诸城人事人才网

    楼主辛苦了 写这么好的文章给大家分享,呵呵

    回复
  14. 地源热泵

    博主说的很有见解,顶一个。

    回复
  15. 衡阳seo

    进来看看,真的讲的非常不错

    回复
  16. 专业音箱

    相当专业!

    回复
  17. 手板模型

    写的太好了,我要投稿,可以投吗?

    回复
  18. 衡阳seo

    好长时间没来,今天过来看看,喜欢你的博客,记得回访哦

    回复
  19. Tyre+Valves

    呵呵,好的,想法不错,收藏一下,经常会来看看的。

    回复
  20. 成功源于分享

    强!你的文章写得太有含金量啦,我专注百度竞价技术研究,以后多分享和交流快速赚钱的心得!壬辰年(龙)正月廿八 2012-2-19

    回复
  21. 中药减肥方法

    博主的文章很精彩 值得阅读

    回复
  22. 滨州装修网

    很喜欢楼主的风格。

    回复
  23. 成功源于分享

    兄弟,你的文章写得太牛!了,我专注百度竞价技术研究,以后多分享和交流快速赚钱的心得!壬辰年(龙)正月廿七 2012-2-18

    回复
  24. 长沙私家侦探

    支持一下,欢迎来到我的网站指点一下,谢谢了。

    回复
  25. 无源音箱

    没想到这样也可以。

    回复
  26. 香袭人

    我支持你。

    回复
  27. 快速样件

    又更新了?我是经常来看你发的发章哦!

    回复
  28. 手板模型

    版主又发布新文章,据说实用性挺高,感觉版主好有思想。
    版主辛苦了,支持。

    回复
  29. 成功源于分享

    牛!兄弟,你的文章写得太有含金量了,我专注百度竞价技术研究,以后多分享和交流快速赚钱的心得!壬辰年(龙)正月廿五 2012-2-16

    回复
  30. tradekey

    为了学习这个知识,到处找相关文章,在此也要感谢一下博主了。

    回复
  31. 武汉安防

    感谢楼主精彩分享,谢谢! 新年快乐http://www.cctvbd.com

    回复
  32. Metal+Stamping

    是个好内容,楼主有心了,我爱你。继续努力!!!

    回复
  33. NdFeB Magnets

    不错,支持!!!

    回复
  34. ice+cream+machine

    以后经常来看版主老师的博客

    我喜欢你。

    回复
  35. 宁波国际快递

    不错,我喜欢!!!

    回复
  36. 感恩作文

    很好的文章,非常喜欢,呵呵,不错,这种好文章不多,博主辛苦了。

    回复
  37. 弱电

    来给博主顶下,新年快乐!

    回复
  38. solar-panel

    呵呵,内容写的很到位,感觉很好,收藏一下,谢谢版主。我是经常来拜访你的访问者之一哦,今天忍不住留言了。

    回复
  39. injection molding

    不错,这种介绍很到位,支持一下,博主辛苦了。

    回复
  40. 诸城人事人才网

    楼主辛苦了 写这么好的文章给大家普及知识,呵呵

    回复
  41. 读后感

    好长时间没来,今天过来看看,喜欢你的博客,记得回访哦!

    回复
  42. 压铸件

    听很多朋友说起这个网址,没想到真的很好,一上来就看到好多有用的东西,忍不住留言赞一下。版主真棒,继续努力,我们一起支持你。

    回复
  43. 铝合金压铸

    绝对支持版主,博主每天辛苦更新文章不容易,我会经常来访问你的站点的,文章写的好。收藏一下。顶

    回复
  44. lv女包

    喜欢文章,看看

    回复
  45. 成功源于分享

    牛!兄弟,你这文章写得太有含金量了,我专注百度竞价技术研究,以后多分享和交流快速赚钱的心得!

    回复
  46. 宁波网络公司

    好好学习,确实要科学分析才能真正了解这个东西的,收藏一下。谢谢版主。

    回复
  47. 青岛租车

    其实楼主强大 膜拜中。。。。

    回复
  48. 掏宝网

    写的不错 期待下一篇

    回复
  49. 文秘之家

    文章不错,来看看

    回复
  50. sem3

    晕……

    回复