pasckr 发表于 2016-5-12 18:19:12

WordPress自定义域和自定义分类图片






                很久前就在筹划一个站,最近也想开始折腾,顺便扒一个皮。按照倡萌的设想,要使用到自定义域功能来设定列表和首页的图片(其实是图标),以及短标题(也就是文章的标题可以是很长的,但是在首页调用的只是一个短的词组);还可能会给每一个分类设定一个图片,当文章没有图片,也没有自定义图片时,自动调用分类的图片。所以摘录以下文章作参考。
WordPress自定义域
  关于WordPress自定义域,就拿一个例子来看吧。
  自定义字段是 WordPress 的一个很强大的功能,但对于普通的使用者来说用处并不大…
  关于如何通过自定义字段给 WordPress 博客首页中的每篇日志添加图片的方法,网上有不少介绍。
  在博客首页的每一篇日志中都会显示一篇和内容相关的图片,该图片是我事先准备好的,而非日志中的缩略图,这张图片在单篇日志的内容中可以不予显示。如果我没有为日志指定一张图片,那么自动会有一张默认的图片进行“填充”。效果看下面出现的那张图。
http://img10.3lian.com/edu121104/g/g106/201210/2567b139b8915c9eab1ae0e30d6f63a9.jpg
  在 index.php 中找到如下或类似的代码:
<?php the_excerpt(); ?> 或 <?php the_content(); ?>  前者是输出摘要,后者是输出全文,了解 WordPress 的朋友肯定都知道,这里就不多说了。找到这行代码后,我直接在它的前面添加如下代码:
<?php if ( get_post_meta($post->ID, 'index_image', true) ) : ?><?php $image = get_post_meta($post->ID, 'index_image', true); ?><a href=&quot;<?php the_permalink() ?>&quot;><img src=&quot;<?php echo $image; ?>&quot;alt=&quot;<?php the_title(); ?>&quot; /></a><?php else: ?><a href=&quot;<?php the_permalink() ?>&quot;><img src=&quot;<?php bloginfo('stylesheet_directory'); ?>/images/vc-default.png&quot; alt=&quot;<?php the_title(); ?>&quot; /></a><?php endif; ?>  仔细看这段代码,这里用了一个 if else 的条件判断语句:
  第一行中,if 括号里面的条件 &lsquo;index_image&rsquo; 如果为 true(真),也就是说,我在编辑文章时使用了这个自定义字段,那么就直接执行第二行代码:输出 index_image 这个值,index_image 的值是一张图片的绝对地址,所以我这里就直接输出了这张图片,并加上该篇日志的链接;
  第三行的 else 的意思是除了第一行条件 true(真)之外(那就是假了)的话就执行第四行的代码;
  第四行中我输出了一张位于主题文件夹的 images 目录下的默认的图片&mdash;&mdash;vc-default.png ,同时也带上了文章的链接。
  根据刚开始的那张图按下面的步骤就可以添加自定义字段了:
  1、添加自定义字段名:index_image (添加过一次之后就直接能在下面的下拉菜单中选择了);
  2、添加放在首页文章里的图片绝对地址;
  3、点击&ldquo;添加自定义字段&rdquo;的按钮。
  这样,更新完日志之后就能在首页看到效果了~ 不过根据不同的博客主题,需要对这张图片进行不同的样式定义,比如 float:right 或 left ,亦或再给图片加个 border 等等,这就要看大家的想象力和喜好了。
WordPress自定义分类图片
  get the category 可以获取 cat_ID(分类 ID)、cat_name(分类名)、category_nicename(分类缩略名)、category_description(分类描述)、category_parent(分类层级) 以及 category_count 等信息,那么,我们就可以用 category_nicename 命名图片,然后匹配并输出。
<?php foreach((get_the_category()) as $cat)        {        $catname =$cat->category_nicename;        echo &quot;<a href&quot;/category/&quot;;        echo $catname;        echo &quot;/&quot;>&quot;;        echo &quot;<img src&quot;/wp-content/cat-icons/&quot;;        echo $catname;        echo &quot;.jpg&quot; alt=&quot;$catname category image&quot; border=&quot;0&quot; /></a>n&quot;;        }?>  代码很简单,就是查询日志所在分类及其缩略名,然后自动在 cat-icons 目录匹配 category_nicename.jpg,然后输出。当然,你可以更改.jpg为你喜欢的各种图片格式。代码的第四行:
echo &quot;<a href&quot;/category/&quot;;  中category应该改为你所设置的固定链接格式的名字,比如我这里设置的是/c/分类名,那就需要把这一行代码改为:
echo &quot;<a href&quot;/c/&quot;;  倡萌从中得到启发,应该是可以实现缩略图的调用顺序,比如:特色图片>自定义域图片>文章第一张>分类图片>随机图片>默认图片,这个以后真用到或者有时间的时候再试试。
页: [1]
查看完整版本: WordPress自定义域和自定义分类图片