在WordPress文章列表中插入跳转的广告文章或在任何地方插入广告代码

这篇 WordPress小贴士让你在文章列表的任何地方插入一个或多个广告短文,完美地融入了主题结构,与主题列表的呈现形式一模一样,无需改动任何结构!并且能一键无痕地将任何发表的文章变成广告自动跳转文章!
这个实现过程非常简单,可以利用 wordpress强大的定制字段。现在来看一下代码实现的过程。
第一步,打开主题文件functions.php,粘贴以下代码:

/**
* 在文章列表中插入跳转的广告文章或在任何地方插入广告代码
*/
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 ()!
最终,当您要将您的文章链接到 blog以外的页面时,只需在该文章中创建自定义域url1、title_url或url_title,然后输入一个外部 URL地址作为值。
一旦您发表了一篇文章,系统将查找字段url1或title_url或url_title的值,如果找到了,则直接链接到外部站点,而不是本博客文章;如果没有找到定制字段值,链接本身就会显示。
Wordpress列表文章的中间位置添加
如果希望出现在中间位置,例如 WordPress的分类页面、 Search页面、 Tag页面等,如果希望出现在中间位置(例如第5篇文章后面),请使用以下代码:

<?php if ($wp_query->current_post == 5) : ?>  
    <div> 广告代码 </div>  
<?php endif;  ?>  
<?php if ($wp_query->found_posts < 6 and $wp_query->current_post == ($wp_query->found_posts - 1)): ?>  
    <div> 广告代码 </div>  
<?php endif; ?>

关于 $current_post 这个属性,需要用在 Loop 里面,表示当前显示的文章索引值;它的数值是以0为起始值,如果想要在第6个文章后面,$wp_query->current_post 等于5即可。

而$found_posts 这个属性,表示按 $wp_query 匹配的文章总数。

切记,上面的代码只能放在 Loop 里面,比如 <?PHP if (have_posts()) : while (have_posts()) : the_post(); ?> 后面,表示广告代码将在文章列表的第6个文章后面出现,如果列表匹配出来的文章总数不到 6个,就在列表的最后位置出现广告代码。

版权声明:
作者:洒墨坡
链接:https://samopo.com/jiaochen/140.html
来源:洒墨坡
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>