WP安全:禁止直接进入登陆界面

如果网站仅限于自己登陆,或者某些企业站,可以使用下面这个方法,只有带参数或者以登陆用户才可以访问wp-admin/ 页面和 wp-login.php 页面。

  1. // 后台登陆地址
  2. add_action(‘login_enqueue_scripts’,’login_protection’);
  3.     function login_protection(){
  4.         if($_GET[‘user’] != ‘sdtclass’)  header(‘Location: /’);
  5.     }

上面的代码,加在主题的函数文件里面functions.php,然后保存即可。

加了后,原本 www.***.com/wp-login.php 的页面,直接访问会重定向到首页。只能带参数才能访问。

如何访问

访问地址:www.***.com/wp-login.php?user=sdtclass

上面代码中的“user”和“sdtclass”都可以修改成想要的任意参数。

找回密码

然后有朋友问我,找回密码怎么办?

www.***.com/wp-login.php?user=sdtclass&action=lostpassword

用上面的地址,就可以啦!

以上方法来源于互联网,感谢原作者提供思路。找回密码这个联想一下就懂了。来源于哪里已不记得。太久了。

begin主题二次开发-自定义首页幻灯片

begin的首页幻灯片,都是针对于文章的。具体使用参考鸟哥的帮助文章。

显然我们希望可以自定义的啦。那么如果写死也可以,但是如果会经常换,还是利用后台设置。下面开始分两个阶段,一个是后台的录入,一个是前台的输出。

增加一个TAB

首先找到后台设置的文件:/wp-content/themes/begin/inc/options/options.php

  1. // 找到
  2.     $options[] = array(
  3.         ‘name’ => ‘基本设置’,
  4.         ‘type’ => ‘heading’
  5.     );
  6. // 在这个上面增加
  7.     $options[] = array(
  8.         ‘name’ => ‘幻灯片设置’,
  9.         ‘type’ => ‘heading’
  10.     );

这样,就多了一个幻灯片的独立设置TAB页面,以分开来设置比较方便直观。

增加开关

然后,如果你想文章幻灯也不切割,一并保留或者设置个开关也不错。如下:

  1. // 上面加入的代码后面增加
  2.     $options[] = array(
  3.         ‘name’ => ‘开启自定义幻灯’,
  4.         ‘desc’ => ‘勾选显示’,
  5.         ‘id’ => ‘slidercustom’,
  6.         ‘std’ => ‘0’, /* 默认值 */
  7.         ‘type’ => ‘checkbox’
  8.     );
  9.     $options[] = array(
  10.         ‘name’ => ‘开启文章幻灯’,
  11.         ‘desc’ => ‘勾选显示’,
  12.         ‘id’ => ‘sliderblog’,
  13.         ‘std’ => ‘0’,
  14.         ‘type’ => ‘checkbox’
  15.     );

增加幻灯片自定义

设置好了开关,可以来设置幻灯片的图片、URL或者其他属性。如下:

  1. // 在上面的代码后面增加如下代码
  2.     $options[] = array(
  3.         ‘name’ => ‘幻灯片1’,
  4.         ‘desc’ => ‘宽度大于等于760px,高度保持统一。’,
  5.         ‘id’ => ‘slidermedia1’,
  6.         “std” => “”,
  7.         ‘type’ => ‘upload’
  8.     );
  9.     $options[] = array(
  10.         ‘name’ => ‘幻灯片1链接地址’,
  11.         ‘desc’ => ‘链接地址,留空则无链接。’,
  12.         ‘id’ => ‘sliderurl1’,
  13.         ‘std’ => ,
  14.         ‘type’ => ‘text’
  15.     );
  16.     $options[] = array(
  17.         ‘name’ => ‘幻灯片1描述’,
  18.         ‘desc’ => ‘描述内容’,
  19.         ‘id’ => ‘slideralt1’,
  20.         ‘std’ => ,
  21.         ‘type’ => ‘text’
  22.     );
  23. // 多个请复制,把数字“1”修改即可

一般预留六个都够用了,弄太多也影响网站打开速度哇。为了展示起来美观,加入个横线,代码:

  1. // 需要横线的地方,加入
  2.     $options[] = array(
  3.         ‘id’ => ‘clear’
  4.     );

界面效果图

begin-slider

注意一点,所有幻灯片的高度都要一致,不然会很丑的说。

前台输出

幻灯片文件按照之前的说法,查找到是:/wp-content/themes/begin/inc/slider.php

首先,我们在后台设置了可配置参数,我们前台输出,可以这样简单的写:

  1. <li>
  2.     <a href=“<?php echo zm_get_option(“sliderurl1“); ?>” rel=“bookmark”><img src=“<?php echo zm_get_option(“slidermedia1“); ?>”></a>
  3. </li>

那么,当我们想要多个怎么办?复制几个改一二三四五?其实可以利用for函数解决这个问题:

  1. <?php for($i=1;$i<7;$i++) { ?>
  2.     <li>
  3.         <a href=“<?php echo zm_get_option(“sliderurl$i“); ?>” rel=“bookmark”><img src=“<?php echo zm_get_option(“slidermedia$i“); ?>”></a>
  4.     </li>
  5. <?php } ?>

这里设置 $i 的值是1,最大是6,也就是小于7,累加递增。循环一次就+1。这样可以循环六次。但是,如果有时候我们并不需要全部设置呢?总不能后面没图片而样式丑陋吧?所以这里需要利用到for循环里面的一个函数“break”,这个用于跳出循环。代码如下:

  1. <?php for($i=1;$i<7;$i++) {
  2.     if (zm_get_option(“slidermedia$i”) == “” ) break;
  3. ?>
  4.     <li>
  5.         <a href=“<?php echo zm_get_option(“sliderurl$i“); ?>” rel=“bookmark”><img src=“<?php echo zm_get_option(“slidermedia$i“); ?>”></a>
  6.     </li>
  7. <?php } ?>

第二行的代码,是判断图片设置的值是否为空,控制跳出这个循环。

但是还有一个情况,图片设置,不设置url地址呢?所以也要加入URL空值的判断。代码如下:

  1. <?php for($i=1;$i<7;$i++) {
  2.     if (zm_get_option(“slidermedia$i”) == “” ) break;
  3. ?>
  4.     <?php if (zm_get_option(“sliderurl$i”) == “” ) { ?>
  5.         <li>
  6.             <img src=“<?php echo zm_get_option(“slidermedia$i“); ?>”>
  7.         </li>
  8.     <?php } else { ?>
  9.         <li>
  10.             <a href=“<?php echo zm_get_option(“sliderurl$i“); ?>” rel=“bookmark”><img src=“<?php echo zm_get_option(“slidermedia$i“); ?>”></a>
  11.         </li>
  12.     <?php } ?>
  13. <?php } ?>

上面判断是否有URL,空的话,则不加入链接,不是空则加入链接,且输出链接。

到这里基本完成了。不过两个开关还需要拿出来判断下。示例代码如下:

  1. <?php if (zm_get_option(‘slidercustom’)) { ?>
  2.     <!– 自定义幻灯有开则显示 –>
  3. <?php } ?>

把另外的判断“sliderblog”的代码,加在原来输出文章幻灯代码的地方即可控制。例子如上。

总结

OK,整个思路就是这样。具体需要大家实践。这里涉及到的PHP基础参考如下:

begin主题带图相关文章模块的CSS样式修复

最近发现,begin主题的相关文章里面的图片,好像有问题。在文章图片比较偏长方形的时候,就会发现问题了。

begin-CSS-debug0118-1

我们用谷歌审核元素,可以发现CSS里面,height和width都是auto。那么,我们尝试定义一下高度。

begin-CSS-debug0118-2

把height设置为何其他图片一致的130px的高度。这个时候,出现另一个BUG,有的图片会出现空白区。那么,我们修改宽度的auto为“100%”

begin-CSS-debug0118-3

OK,修改到这里,就完成了,但是在缩小屏幕的时候会发现有一点拉长,继续缩小则换行排成两行。这个由media决定啥时候换行。大家可以参考我们前面的文章提到的media控制。可以在调节适当的宽度。或用media在适当的宽度下重新定义高度。都是可以的。

CSS代码:style.css 1764行

  1. .related-site-img a img {
  2.     max-width: 100%;
  3.     width: 100%; /* 原auto */
  4.     height130px/* 原auto */
  5.     -webkit-transition: -webkit-transform .3s linear;
  6.     -moz-transition: -moz-transform .3s linear;
  7.     -o-transition: -o-transform .3s linear;
  8.     transition: transform .3s linear
  9. }

如果要改media变4列的宽度,修改 1795 行

  1. /* 原来的480px 改为580px 或者自己调整自己喜欢的数值 */
  2. @media screen and (min-width580px) {
  3. .r4 {
  4.     floatleft;
  5.     width: 25%;
  6. }
  7. }

到这里就OK了。或者自己根据media属性,去定义“.related-site-img a img”里的height值也可以。

PS:还是那句话,这些是提供思路,自己自由发挥哈。

wordpress技术-禁止订阅用户访问后台

begin主题虽然有个功能,但是只是少了入口,实际上测试还是可以进入后台的,那么怎么彻底解决呢?一时半会没思路,百度了下,果然有人贴出了代码。

把下面代码黏贴到主题的模板函数文件里即可:

  1. if ( is_admin() && ( !defined( ‘DOING_AJAX’ ) || !DOING_AJAX ) ) {
  2.   $current_user = wp_get_current_user();
  3.   if($current_user->roles[0] == get_option(‘default_role’)) {
  4.     wp_safe_redirect( home_url() );
  5.     exit();
  6.   }
  7. }

然后设置注册默认用户组是订阅用户。

订阅用户访问:wp-admin 会被301到首页。

 

begin二次开发-首页tab增加多个

begin主题首页的tab切换文章的,默认只有一个推荐文章、一个专题和一个随机。可是这明显不够用呢。那么我们就需要修改代码来实现啦。

首先,从修改设置下手。假设我是一个新手,那么我搜索:option ,这个时候,可以搜索出很多文件。我从options 这个文件夹里面进去看。发现一个options.php 文件,编辑器打开,搜索“Tab切换模块”果然找到,那就是这个文件了,而且从其代码也不难看出,这个就是后台主题设定的区域文件。

PS:文件路径:/wp-content/themes/begin/inc/options/options.php

我们找到如下代码:

  1. $options[] = array(
  2.     ‘name’ => ‘Tab模块“专题文章”设置’,
  3.     ‘desc’ => ‘自定义文字’,
  4.     ‘id’ => ‘tab_b’,
  5.     ‘std’ => ‘专题文章’,
  6.     ‘type’ => ‘text’
  7. );
  8. if ( $options_categories ) {
  9. $options[] = array(
  10.     ‘name’ => ,
  11.     ‘desc’ => ‘选择一个分类’,
  12.     ‘id’ => ‘tabz_n’,
  13.     ‘type’ => ‘select’,
  14.     ‘options’ => $options_categories);
  15. }

这个是控制专题文章的,我们可以继续对比下下面这个代码:

  1. $options[] = array(
  2.     ‘name’ => ‘Tab模块“推荐文章”设置’,
  3.     ‘desc’ => ‘自定义文字’,
  4.     ‘id’ => ‘tab_a’,
  5.     ‘std’ => ‘推荐文章’,
  6.     ‘type’ => ‘text’
  7. );
  8. if ( $options_categories ) {
  9. $options[] = array(
  10.     ‘name’ => ,
  11.     ‘desc’ => ‘选择一个分类’,
  12.     ‘id’ => ‘tabt_id’,
  13.     ‘type’ => ‘select’,
  14.     ‘options’ => $options_categories);
  15. }

假设是新手,看不太懂,咋办呢,这两个代码一对比,很明显的差异就出来了。我们只需修改差异部分。得出需要添加的代码是:

  1. $options[] = array(
  2.     ‘name’ => ‘Tab模块“专题文章二”设置’, /* 后台设定名称 */
  3.     ‘desc’ => ‘自定义文字[留空不显示]’, /* tab标签名称 */
  4.     ‘id’ => ‘tab_new’, /* TAB的ID */
  5.     ‘std’ => ,  /* 预设TAB标签名称 */
  6.     ‘type’ => ‘text’
  7. );
  8. if ( $options_categories ) {
  9. $options[] = array(
  10.     ‘name’ => /* 预设分类 */
  11.     ‘desc’ => ‘选择一个分类’, /* 分类右边的提示语 */
  12.     ‘id’ => ‘tabz_new’, /* 内容对应的分类ID */
  13.     ‘type’ => ‘select’,
  14.     ‘options’ => $options_categories);
  15. }

上面不同的地方我已经注释出来了,实际上每增加一个TAB,就修改这里的内容即可了。预设TAB标签为何留空呢?因为增加的专题可以灵活开关也是不错的。留空则关,这样不需要另外增加一个值判断。方便。

如果需要添加多个,按照上面的这个示例自己添加不同的,注意修改ID的值。这个是最重要的。

home-cms-tab

设定做好了,接下来就是显示输出了。我们再次以新手的角度找文件。恩,搜索,还是搜索,搜索“tab”会找到一个 cms-tab.php 的文件。打开看代码,修改里面的两个地方。

PS:文件路径:/wp-content/themes/begin/cms/cms-tab.php

首先,我们从设置里面,就看到了几个ID值,比如:tab_a、tab_b这样的。然后我们看到如下代码:

  1. <h2 class=“tab-hd”>
  2.  <span class=“tab-hd-con”><a href=“javascript:”><?php echo zm_get_option(‘tab_a‘); ?></a></span>
  3.  <span class=“tab-hd-con”><a href=“javascript:”><?php echo zm_get_option(‘tab_b‘); ?></a></span>
  4.  <span class=“tab-hd-con”><a href=“javascript:”><?php echo zm_get_option(‘tab_c‘); ?></a></span>
  5. </h2>

我们想把随机文章放最后的话,就在 tab_b 和 tab_c 中间插入新的切换标签按钮代码:

  1. <?php if(zm_get_option(‘tab_new‘)) { ?>
  2. <span class=“tab-hd-con”><a href=“javascript:”><?php echo zm_get_option(‘tab_new‘); ?></a></span>
  3. <?php } ?>

多个请自行添加。if判断是判断是否为空,如果没填写TAB名称,则是空,则不显示这个地方。同样这个判断可以利用在现有的三个TAB上面。

TAB标签切换按钮加好了,肯定也要加入对应内容了。我们可以看下面的代码:

  1. <div class=“tab-bd-con current”>
  2.         <?php query_posts(‘showposts=’.zm_get_option(‘tabt_n’).’&cat=’.zm_get_option(‘tabt_id‘)); while (have_posts()) : the_post(); ?>
  3.         <?php the_title( sprintf( ‘<li class=“list-title”><i class=“fa fa-angle-right”></i><a href=“%s” rel=“bookmark”>’, esc_url( get_permalink() ) ), ‘</a></li>’ ); ?>
  4.         <?php endwhile; ?>
  5.         <?php wp_reset_query(); ?>
  6. </div>
  7. <div class=“tab-bd-con”>
  8.         <?php query_posts(‘showposts=’.zm_get_option(‘tabt_n’).’&cat=’.zm_get_option(‘tabz_n‘)); while (have_posts()) : the_post(); ?>
  9.         <?php the_title( sprintf( ‘<li class=“list-title”><i class=“fa fa-angle-right”></i><a href=“%s” rel=“bookmark”>’, esc_url( get_permalink() ) ), ‘</a></li>’ ); ?>
  10.         <?php endwhile; ?>
  11.         <?php wp_reset_query(); ?>
  12. </div>

从这里,我们继续找出不同点,也就是tabt_id 和 tabt_n ,其他代码都相同,除了class里面的current,这个用于默认显示的TAB。那么,我们可以在这个下面添加如下代码:

  1. <?php if(zm_get_option(‘tab_new‘)) { ?>
  2.     <div class=“tab-bd-con”>
  3.         <?php query_posts(‘showposts=’.zm_get_option(‘tabt_n’).’&cat=’.zm_get_option(‘tabz_new‘)); while (have_posts()) : the_post(); ?>
  4.         <?php the_title( sprintf( ‘<li class=“list-title”><i class=“fa fa-angle-right”></i><a href=“%s” rel=“bookmark”>’, esc_url( get_permalink() ) ), ‘</a></li>’ ); ?>
  5.         <?php endwhile; ?>
  6.         <?php wp_reset_query(); ?>
  7.     </div>
  8. <?php } ?>

多个自定义自行累加。这里的if判断语句,一样是用于判断是否TAB名称为空,如果对应是空,则不调用这个对应文章。同样可以把判断加在默认的三个TAB上面。

上面不同的区域已经用红色标记出来了,大家仔细看代码。写这个文章,主要是给新手一个思路。如果还是看不懂,建议查看本站的php基础入门,熟悉基础语法。以后代码看多了,写多了,自然有经验。找文件也不一定就要搜索了。看个文件夹大概都能猜测下。因为每个程序员的作品文件架构不一样。所以我们看到的WP主题里面的文件都有或多或少的出入。大体的还是不变的。下次有空多说几个找文件的方法。

当然了。加多了几个TAB,会发现小屏幕下,不显示第四个和之后的TAB。这个就需要修改CSS了。详细查看本站关于CSS的文章若干,也可以研究下CSS3的@media标签的用法。

 

begin二次开发-修改随机文章小工具指定/排除某分类

begin自带一个随机文章的小工具,可以拿来放页脚或者侧边栏。但是,有一些分类也许不想显示。怎么办呢?

首先,找到文件:/wp-content/themes/begin/inc/core/widgets.php

PS:我是怎么找到这个文件的呢?建设我是一个菜鸟,我可以利用文件搜索功能,搜索相对的关键字,如果找不到呢?可以找同一个类型的,比如说tag小工具,搜索tag总可以吧?或者搜索widget。

OK。找到文件,我们编辑器打开,进去搜索下关键词“随机文章”,看到有两处地方,其中一处关键在这里:

Code   ViewPrint
  1. // 随机文章
  2. class random_post extends WP_Widget {
  3.      function random_post() {
  4.         $widget_ops = array(‘description’ => ‘显示随机文章’);
  5.         $this->WP_Widget(‘random_post’, ‘主题&nbsp;&nbsp;随机文章’, $widget_ops);
  6.      }
  7.      function widget($args$instance) {
  8.         extract($args);
  9.         $title = apply_filters( ‘widget_title’, $instance[‘title’] );
  10.         echo $before_widget;
  11.         if ( ! emptyempty$title ) )
  12.         echo $before_title . $title . $after_title;
  13.         $number = strip_tags($instance[‘number’]) ? absint( $instance[‘number’] ) : 5;
  14. ?>
  15. <div id=“random_post_widget”>
  16.     <ul>
  17.         <?php query_posts( array ( ‘orderby’ => ‘rand’, ‘showposts’ => $number, ‘ignore_sticky_posts’ => 10 ) ); while ( have_posts() ) : the_post(); ?>
  18.             <li><a href=“<?php the_permalink() ?>” rel=“bookmark”><?php the_title(); ?></a></li>
  19.         <?php endwhile; ?>
  20.         <?php wp_reset_query(); ?>
  21.     </ul>
  22. </div>

这个代码第18行可以看到有一组数组在这里,就是改这里了。如果要指定分类,那么:

Code   ViewPrint
  1. <?php
  2. //原代码
  3. query_posts( array ( ‘orderby’ => ‘rand’, ‘showposts’ => $number, ‘ignore_sticky_posts’ => 10 ) ); while ( have_posts() ) : the_post();
  4. // 修改为 
  5. query_posts( array ( ‘orderby’ => ‘rand’, ‘showposts’ => $number, ‘category__in’ => array(1,2), ‘ignore_sticky_posts’ => 10 ) ); while ( have_posts() ) : the_post();
  6. ?>

这里用 category__in 这个系统函数来指定。也可以用 cat

但是如果只是想排除分类呢?

Code   ViewPrint
  1. <?php
  2. //原代码
  3. query_posts( array ( ‘orderby’ => ‘rand’, ‘showposts’ => $number, ‘ignore_sticky_posts’ => 10 ) ); while ( have_posts() ) : the_post();
  4. // 修改为 
  5. query_posts( array ( ‘orderby’ => ‘rand’, ‘showposts’ => $number, ‘category__not_in’ => array(3,4), ‘ignore_sticky_posts’ => 10 ) ); while ( have_posts() ) : the_post();
  6. ?>

这里用 category__not_in 这个系统函数来指定排除的分类。

修改好了文件,保存,替换线上的文件,然后多刷新几次测试看看,看看有没有显示被排除的分类。

参考:

widgets-category-1223

 

begin主题首页调用指定分类友链【代码篇】

【PS:其实我后面发现好像主题是可以设置的,只是一时半会找不到设置的地方。在我写这个文章之后的后来看到了。不过其实我已经写死了。哈哈。而且反正我已经发出来了。虽然是定时的。】

最近更换了begin主题,肯定是要一个个的地方改了。页脚基本设定好了。友链这里想想还是需要改进改进。因为不想全部展示。

我们首先来找下文件,打开主题目录下的footer.php,看到如下代码:

Code   ViewPrint
  1. <div class=“clear”></div>
  2. <?php if (zm_get_option(‘footer_link’)) { ?>
  3.     <?php get_template_part( ‘inc/footer-links’ ); ?>
  4. <?php } ?>
  5. </div><!– .site-content –>

从这里,我们可以看出,这个地方引用了别的文件,于是我们在inc文件夹下面,找到了footer-links.php 文件。

打开看到如下代码:

Code   ViewPrint
  1. <?php if ( is_home()&&!is_paged() ){ ?>
  2. <div id=“links”>
  3.     <ul>
  4.         <?php wp_list_bookmarks(‘title_li=&before=<span class=“lx7”><span class=“link-f”>&after=</span></span>&categorize=1&show_images=0&orderby=rating&order=DESC&category=’.zm_get_option(‘link_f_cat’)); ?>
  5.         <?php if ( zm_get_option(‘link_url’) ==  ) { ?><?php } else { ?><span class=“lx7”><span class=“link-f”><li><a href=“<?php echo get_permalink( zm_get_option(‘link_url’) ); ?>” target=“_blank” title=“全部链接”>更多链接<i class=“icon-li”></i></a></li></span></span><?php } ?>
  6.     </ul>
  7.     <div class=“clear”></div>
  8. </div>
  9. <?php } ?>

这里关键的在第四行的“category=”这个后面添加指定的分类ID即可。

然后,删除“.zm_get_option(‘link_f_cat’)”这个调用。反正写死了。

那么,又一个问题,如何知道友情链接分类的分类ID呢?

打开后台-链接-链接分类目录-选择要显示在首页的链接-点击编辑-查看URL,如下:

  1. http://blog.xukhost.com/wp-admin/edit-tags.php?action=edit&taxonomy=link_category&tag_ID=2******

这里的ID后面的数字就是当前的ID号了,填入上面代码即可。【由于部分图片丢失,下图为补充图

begin-footer-links-id

begin二次开发-增加RSS整合页面

如果从鸟哥旧版主题过渡来的用户,会发现一些页面没有了,其中就包括RSS整合页面,这个页面虽说不是一开始就包含里面的,但是经常看鸟哥的文字也会发现其有提供。我的旧模板也用过这个页面。所以这次动手制作这个页面。

首先,添加函数模板,增加小工具,我们打开后台-外观-编辑-functions.php

我们可以看到一开始就有小工具的相关代码,类似:

Code   ViewPrint
  1. register_sidebar( array(
  2.     ‘name’          => ‘页脚小工具’,
  3.     ‘id’            => ‘sidebar-f’,
  4.     ‘description’   => ‘显示在页脚’,
  5.     ‘before_widget’ => ‘<aside id=“%1$s” class=“widget %2$s”>’,
  6.     ‘after_widget’  => ‘<div class=“clear”></div></aside>’,
  7.     ‘before_title’  => ‘<h3 class=“widget-title”><div class=“s-icon”></div>’,
  8.     ‘after_title’   => ‘</h3>’,
  9. ) );

我们可以在这段代码后面添加如下代码:

Code   ViewPrint
  1. //RSS 小工具
  2.     register_sidebar( array(
  3.         ‘name’          => ‘RSS页面工具’,
  4.         ‘id’            => ‘sidebar-rss’,
  5.         ‘description’   => ‘显示在RSS页面’,
  6.         ‘before_widget’ => ‘<aside id=“%1$s” class=“widget %2$s”>’,
  7.         ‘after_widget’  => ‘<div class=“clear”></div></aside>’,
  8.         ‘before_title’  => ‘<h3 class=“widget-title”><div class=“s-icon”></div>’,
  9.         ‘after_title’   => ‘</h3>’,
  10.     ) );

这里我说一下,其实我就是复制上面的代码下来的,然后修改了name、id、description这三个值,然后这里就修改完毕了。

然后,我们需要一个页面,于是,新建一个php文件,命名为:template-feeds.php

加入如下内容:

Code   ViewPrint
  1. <?php
  2. /*
  3. Template Name: RSS整合
  4. */
  5. ?>
  6. <?php get_header(); ?>
  7.         <main id=“main” class=“site-main” role=“main”>
  8.         <?php while ( have_posts() ) : the_post(); ?>
  9.             <article id=“post-<?php the_ID(); ?>” <?php post_class(); ?>>
  10.                     <div id=“message” class=“message-page”>
  11.                         <?php if (zm_get_option(‘footer_w’)) { ?>
  12.                             <div id=“rss-widget-box”>
  13.                                 <div class=“pagerss-widget”>
  14.                                     <?php dynamic_sidebar( ‘sidebar-rss’ ); ?>
  15.                                     <div class=“clear”></div>
  16.                                 </div>
  17.                             </div>
  18.                         <?php } ?>
  19.                     </div><!– #message –>
  20.             </article><!– #page –>
  21.         <?php endwhile; ?>
  22.         </main><!– .site-main –>
  23. <?php get_footer(); ?>

保存后,上传到FTP下面 /wp-content/themes/begin/pages 的目录下。

这里的DIV设计是根据现在的主题来的。不过还需要添加几个样式到style.css 【后台-外观-编辑】

Code   ViewPrint
  1. /** RSS 页面 **/
  2. #rss-widget-box {
  3.     background#FFF;
  4.     positionrelative;
  5.     padding10px 0;
  6.     box-shadow: 0 –1px 1px rgba(0, 0, 0, 0.1);
  7. }
  8. .pagerss-widget {
  9.     width1000px;
  10.     margin: 0 auto;
  11. }
  12. .pagerss-widget h3 {
  13.     font-size15px;
  14.     color#FFF;
  15.     margin15px 0 0 0;
  16. }
  17. /* RSS PAGE工具栏 */
  18. .pagerss-widget .widget {
  19.     background#FFF;
  20.     floatleft;
  21.     width: 50%;
  22.     padding: 0 20px;
  23.     bordernone;
  24.     box-shadow: none;
  25. }
  26. .pagerss-widget, .footer-widget a {
  27.     color#ccc;
  28. }
  29. .pagerss-widget a:hover {
  30.     color#84D492;
  31. }
  32. .pagerss-widget .widget ul {
  33.     padding8px 0 15px;
  34. }
  35. .pagerss-widget .menu li {
  36.     floatleft;
  37.     width: 33%;
  38. }

添加在末尾,或者在主题设置里面的自定义CSS加,我喜欢直接添加在文件里面。

到这里,代码已经搞定啦。

然后:外观-小工具-拖动RSS到“RSS页面工具”下,并且填写地址。

最后:新建页面-页面模板选择“RSS整合”,填写页面地址,即可发布。

示例查看:http://blog.xukhost.com/rss-feeds

rss-page-151222

由于图片丢失上面为示例图片。PS:左边的错误原因未知,以后研究,绝大多数都是可以读取的。】

begin主题使用之:设置百度站内搜索

步骤如下:

前提步骤,如果你之前没用过百度站长平台。

一:注册百度账号并登陆 http://zhanzhang.baidu.com/

二:进入添加域名,验证域名,有别名验证,TXT验证和HTML代码验证三种。

已有账号且已验证请看这里:

一:访问 http://zn.baidu.com/cse/home/index

二:点击右边的 进入管理后台 【注意,不是API引擎这里。】

baiduznss-1

三:搜索引擎管理-新建搜索引擎

baiduznss-2

四:选择域名,填写名称,记录地址栏最后一串数字即可。

baiduznss-3

五:下一步,随便选一个,然后提交,这里不影响,ID我们已经获取。

六:来到自己网站-后台-页面-新增页面-页面模板选择百度搜索-填写页面名称和设置URL后发布。

七:进入外观-主题设置-基本设置-百度站内搜索-启用-填写ID-选择刚才添加的页面-保存即可。

baiduznss-4

OK,感谢鸟哥指点,其实我一开始申请错了地方,就是API那里,然后一直发现怪怪的。

 

begin主题二次开发:新增留言版页面模板

前段时间,买了这个魔板。也由于忙,今天才上线,小小的折腾修改了下。

首先,页面模板的文件路径在:/wp-content/themes/begin/pages/

代码我写好了,你们复制,新建一个php文件即可。如:template-leaveword.php

然后把下面代码放进去:

然后,在:页面-新建页面-页面模板-选择留言板-发布。

这样就完工了。

如果不需要侧栏,想要宽屏,就去掉第8、45、47行即可。

liuyan-page