昨天,发现了一个非常完美的方法,操作起来远没有上面描述的这样复杂!可以在文章列表中的任意位置插入一篇或多篇广告跳转文章,完美的与主题结构融合,与主题列表的展现形式一模一样,不用去额外的改变任何结构!而且可以一键无痕的将发布的任何文章变成广告跳转文章!
实现过程非常简单,利用了 wordpress 强大的自定义字段~首先,打开主题文件 functions.php,粘贴下面的代码到里面:


/**
* WordPress 文章列表中完美插入一篇或几篇广告跳转文章
*
*/
function lxtx_post_link() {
global $post;
$thePostID = $post->ID;
$post_id = get_post($thePostID);
$title = $post_id->post_title;
$perm  = get_permalink($post_id);
$post_keys = array(); $post_val  = array();
$post_keys = get_post_custom_keys($thePostID);
if (!empty($post_keys)) {
     foreach ($post_keys as $pkey) {
         if ($pkey=='url1' || $pkey=='title_url' || $pkey=='url_title') {
             $post_val = get_post_custom_values($pkey);
         }
     }
     if (empty($post_val)) {
         $link = $perm;
     } else {
         $link = $post_val[0];
     }
} else {
     $link = $perm;
}
echo $link;
}

再把主题中输出文章固定链接地址的函数:the_permalink() 替换为我们上面自定义的这个函数:lxtx_post_link() 即可!
最后,当你要将文章链接到博客之外的页面时,只要在这篇文章中创建自定义字段url1或title_url或url_title ,再输入外部URL地址作为值就可以了。完成这个操作后,当你发表一篇文章时,系统会查找字段url1或title_url或url_title的值,如果找到,那么就会直接链接到外部站点而不是本博客文章;如果没有找到自定义字段值,就会简单地显示链接本身。如下图,图中的这篇“测试文章”的链接就是指向外链的!
友情提示:
1.可以把多篇文章变为广告跳转文章哦,而且通过调节时间,可以在任意位置显示。 这样访客在浏览你的文章时,肯定想不到这是一个广告!当然这样做肯定不是很合适啦~~
2.上面的代码还可以进一步精简的,我感觉不需要设置这么多的自定义字段~