精华内容
下载资源
问答
  • wordpress仿站工具包.zip

    2020-09-14 19:06:27
    wordpress仿站工具包wordpress仿站工具包wordpress仿站工具包wordpress仿站工具包wordpress仿站工具包wordpress仿站工具包wordpress仿站工具包wordpress仿站工具包wordpress仿站工具包wordpress仿站工具包wordpress...
  • wordpress仿站笔记

    2020-06-07 16:53:28
    wordpress非常实用的仿站小技巧,中文网稀缺的最新wordpress仿站教程(wordpress一种快要凉的赶脚呀)

    最近接了一个用wordpress仿站的项目,本以为很简单,但实际上手后才发现了一些“小”问题,而且中文网上关于wordpress的教程不仅少,而且老,很多都已经不适用于5.x后的版本,现在就把我在开发过程中遇到问题整理成该文


    循环块

    这大概是wordpress最实用的功能了,在把静态网页改成动态网页中发挥极大的作用,使用方法如下:

    (1)静态代码
    <div id="jj2" class="kiz_zyzx" >
    <a href="http://www.kiz.cas.cn/zyzx/zyzx01/201807/t20180709_5038706.html">中心简介</a><br />
      <a href="http://www.kiz.cas.cn/zyzx/zyzx05/">科研进展</a><br />
        <a href="http://www.kiz.cas.cn/zyzx/zyzx01/zyzx03/">骨干人才</a><br />
        <a href="http://www.kiz.cas.cn/zyzx/zyzx07/">新闻动态</a><br />
        <a href="http://www.kiz.cas.cn/zyzx/zyzx07/zyzx72/">通知公告</a><br />
      
        <a href="https://www.yunzhan365.com/bookcase/jvpq/">中心简报</a>
        
        </div>
    

    ​ 观察静态代码循环的地方,确定循环块

    (2)动态代码
         <div id="jj2" class="kiz_zyzx">
              <?php query_posts('cat=10 & posts_per_page=6');
              while (have_posts()) : the_post(); ?>
                <a href="<?php lxtx_post_link(); ?>"><?php the_title(); ?></a><br />
              <?php endwhile;wp_reset_query(); ?>
    
            </div>
    
    • 使用 <?php query_posts('cat=10 & posts_per_page=6'); while (have_posts()) : the_post(); ?><?php endwhile;wp_reset_query(); ?> 夹住要循环的块
    • cat属性对应后台分类目录id(鼠标悬浮在目录上可在左下角查看),posts_per_page属性对应循环次数
    • 再修改循环块内部的静态内容为动态内容,如<?php the_title(); ?>

    循环分栏

    上面提到了循环块的使用,那有些时候会碰到循环过程中样式的规律性变化,如下图

    在这里插入图片描述

    这时就要用到php输出html元素

    (1)静态代码
    <table width="200" border="0" cellpadding="0" cellspacing="0">
                    
                      <tr>
                        <td width="50%" height="28" align="left"><table width="100%" border="0" cellpadding="0" cellspacing="0">
                          <tr>
                            <td class="kiz_zyzx">
                              <a href="./gkjj/jgjj/" target="_blank">机构简介</a>
                            </td>
                          </tr>
                        </table></td>
                        <td width="50%" height="28" align="left"><table width="100%" border="0" cellpadding="0" cellspacing="0">
                          <tr>
                            <td class="kiz_zyzx">
                              <a href="./gkjj/szzc/" target="_blank">所长致辞</a>
                            </td>
                          </tr>
                        </table></td>
                      </tr>
                    
                      <tr>
                        <td width="50%" height="28" align="left"><table width="100%" border="0" cellpadding="0" cellspacing="0">
                          <tr>
                            <td class="kiz_zyzx">
                              <a href="./gkjj/leadership/" target="_blank">研究所领导</a>
                            </td>
                          </tr>
                        </table></td>
                        <td width="50%" height="28" align="left"><table width="100%" border="0" cellpadding="0" cellspacing="0">
                          <tr>
                            <td class="kiz_zyzx">
                              <a href="./gkjj/zzjg/" target="_blank">组织机构</a>
                            </td>
                          </tr>
                        </table></td>
                      </tr>
        
        </table>
    

    仔细观察静态代码的结构,和其循环有规律的地方,大致简化规律

    <tr>   
    	<td> </td>
    	<td></td>
    </tr>
    
    
    <tr>   
    	<td> </td>
    	<td></td>
    </tr>
    

    所以我们可以想到,循环标签的内容,每循环两次后,用php输出标签

    (2)动态代码

         <tr>
                  <?php query_posts('cat=8 & posts_per_page=5');
                  while (have_posts()) : the_post();
                    $count++; ?>
                    <td width="50%" height="28" align="left">
                      <table width="100%" border="0" cellpadding="0" cellspacing="0">
                        <tr>
                          <td class="kiz_zyzx">
                            <a href="<?php the_permalink(); ?>" target="_blank"><?php the_title(); ?></a>
                          </td>
                        </tr>
                      </table>
                    </td>
    
                    <?php if ($count == 2) {
                      echo '<tr>';
                      $count = 0;
                    } ?>
                  <?php endwhile;
                  wp_reset_query(); ?>
    
           </tr>
    

    c o u n t 记 录 循 环 次 数 , 再 用 条 件 句 ‘ i f ( count记录循环次数,再用条件句`if ( countif(count == 2)`循环输出tr标签

    获取文章首图

    在仿站过程中,往往有需要动态插入图片的地方,这时候往往通过获取文章首图的方法来插入图片

    (1)获取图片的函数
        function catch_that_image() {
            global $post, $posts;
            $first_img = '';
            ob_start();
            ob_end_clean();
            $output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
        
            //获取文章中第一张图片的路径并输出
            $first_img = $matches [1] [0];
            //如果文章无图片,获取自定义图片
            if(empty($first_img)){ 
            $first_img = "".bloginfo('template_url')."/images/xx.jpg";   //设置默认图片
            }
        
            return $first_img;
        }
    

    把该函数放入function.php文件中

    (2)修改静态内容
    <div class="tile" style="margin-left:4px;">
    <div class="text">
    	<img src="<?php echo catch_that_image() ?>" width=240 height=160 border=0 />
    	<h2 class="animate-text"> <a href="<?php the_permalink(); ?>"
    	target="_blank"><?php the_title(); ?></a></h2>
    </div>
    </div>
    

    将静态的图片链接改为<?php echo catch_that_image() ?>,获取文章的首图

    插入外部链接

    在仿站过程中,有些地方需要插入外部链接而不是跳转到默认的文章页,这时候需要一个插入外部链接的函数

    (1)获取外部链接函数
        //获取外部链接,the_permalink() 替换为out_post_link()
        function out_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=='out_url' || $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;
            
            }
    

    同样把该函数放在function.php文件

    (2)使用方法
    • 在需要跳转外部链接的地方插入<?php out_post_link() ?>

      <a href="<?php lxtx_post_link()?>" target="_blank">
       <img src="<?php echo catch_that_image() ?>" alt="202003" border=0 />
      </a>
      

    面包屑导航

    (1)面包屑函数
            function cmp_breadcrumbs()
            {
              $delimiter = '&nbsp;>&nbsp;'; // 分隔符
              $before = '<span class="top_path">'; // 在当前链接前插入
              $after = '</span>'; // 在当前链接后插入
              if (!is_home() && !is_front_page() || is_paged()) {
                if (is_category()) { // 分类 存档
                  global $wp_query;
                  $cat_obj = $wp_query->get_queried_object();
                  $thisCat = $cat_obj->term_id;
                  $thisCat = get_category($thisCat);
                  $parentCat = get_category($thisCat->parent);
                  if ($thisCat->parent != 0) {
                    $cat_code = get_category_parents($parentCat, TRUE, ' ' . $delimiter . ' ');
                    echo $cat_code = str_replace('<a', '<a class="top_path CurrChnlCls"', $cat_code);
                  }
                  echo '<a class="top_path CurrChnlCls" href="">' . single_cat_title('', false) . '</a>';
                } elseif (is_day()) { // 天 存档
                  echo '<a itemprop="breadcrumb" href="' . get_year_link(get_the_time('Y')) . '">' . get_the_time('Y') . '</a> ' . $delimiter . ' ';
                  echo '<a itemprop="breadcrumb"  href="' . get_month_link(get_the_time('Y'), get_the_time('m')) . '">' . get_the_time('F') . '</a> ' . $delimiter . ' ';
                  echo $before . get_the_time('d') . $after;
                } elseif (is_month()) { // 月 存档
                  echo '<a itemprop="breadcrumb" href="' . get_year_link(get_the_time('Y')) . '">' . get_the_time('Y') . '</a> ' . $delimiter . ' ';
                  echo $before . get_the_time('F') . $after;
                } elseif (is_year()) { // 年 存档
                  echo $before . get_the_time('Y') . $after;
                } elseif (is_single() && !is_attachment()) { // 文章
                  if (get_post_type() != 'post') { // 自定义文章类型
                    $post_type = get_post_type_object(get_post_type());
                    $slug = $post_type->rewrite;
                    echo '<a class="top_path CurrChnlCls" href="' . $homeLink . '/' . $slug['slug'] . '/">' . $post_type->labels->singular_name . '</a> ' . $delimiter . ' ';
                    echo '<a class="top_path CurrChnlCls" href="' . the_permalink()  . '">' .wp_trim_words( get_the_title(), 6 ). '</a>';
                  } else { // 文章 post
                    $cat = get_the_category();
                    $cat = $cat[0];
                    $cat_code = get_category_parents($cat, TRUE, ' ' . $delimiter . ' ');
                    echo $cat_code = str_replace('<a', '<a class="top_path CurrChnlCls"', $cat_code);
                    echo '<a class="top_path CurrChnlCls" href="">' . wp_trim_words( get_the_title(), 5) . '</a>';
                  }
                } elseif (!is_single() && !is_page() && get_post_type() != 'post') {
                  $post_type = get_post_type_object(get_post_type());
                  echo $before . $post_type->labels->singular_name . $after;
                } elseif (is_attachment()) { // 附件
                  $parent = get_post($post->post_parent);
                  $cat = get_the_category($parent->ID);
                  $cat = $cat[0];
                  echo '<a class="top_path CurrChnlCls" href="' . get_permalink($parent) . '">' . $parent->post_title . '</a> ' . $delimiter . ' ';
                  echo $before .  wp_trim_words( get_the_title(), 5). $after;
                } elseif (is_page() && !$post->post_parent) { // 页面
                  echo '<a class="top_path CurrChnlCls" href="' . the_permalink()  . '">' .wp_trim_words( get_the_title(), 5 ). '</a>';
                } elseif (is_page() && $post->post_parent) { // 父级页面
                  $parent_id  = $post->post_parent;
                  $breadcrumbs = array();
                  while ($parent_id) {
                    $page = get_page($parent_id);
                    $breadcrumbs[] = '<a class="top_path CurrChnlCls" href="' . get_permalink($page->ID) . '">' . wp_trim_words( get_the_title(), 5 )($page->ID) . '</a>';
                    $parent_id  = $page->post_parent;
                  }
                  $breadcrumbs = array_reverse($breadcrumbs);
                  foreach ($breadcrumbs as $crumb) echo $crumb . ' ' . $delimiter . ' ';
                  echo '<a class="top_path CurrChnlCls" href="">' . get_the_title() . '</a>';
                } elseif (is_search()) { // 搜索结果
                  echo $before;
                  printf(__('Search Results for: %s', 'cmp'),  get_search_query());
                  echo  $after;
                } elseif (is_tag()) { //标签 存档
                  echo $before;
                  printf(__('Tag Archives: %s', 'cmp'), single_tag_title('', false));
                  echo  $after;
                } elseif (is_author()) { // 作者存档
                  global $author;
                  $userdata = get_userdata($author);
                  echo $before;
                  printf(__('Author Archives: %s', 'cmp'),  $userdata->display_name);
                  echo  $after;
                } elseif (is_404()) { // 404 页面
                  echo $before;
                  _e('Not Found', 'cmp');
                  echo  $after;
                }
              }
            }
    

    将该函数加入function.php文件中

    (2)引用面包屑

    <!-- 面包屑开始 -->
    <span class="top_menu">
        <?php
    		$category = get_the_category();
    		echo $category[0]->cat_name;
    	?>
    </span>
    
    &nbsp;&nbsp;&nbsp;&nbsp;
    
    <?php if (function_exists('cmp_breadcrumbs')) cmp_breadcrumbs(); ?>
    </div>
    <!-- 面包屑结束 -->
    

    轮播图

    轮播图同样使用到了循环的想法,但在仿站的过程中会遇到把图片链接放在css中的做法,php无法写入css中动态获取图片,这时就可以创建一张图片覆盖到原本要轮播的块上,继承其轮播的特效

    (1)静态代码
        <div class="ps_box">
          <div class="pics_switch">
            <div class="pb">
              <div class="pic_box"><a class="pic_banner_001" target="_blank" href="http://www.kiz.cas.cn/"></a></div>
              <div class="pic_box"><a class="pic_banner_002" target="_blank" href="http://www.kiz.cas.cn/"></a></div>
              <div class="pic_box"><a class="pic_banner_003" target="_blank" href="http://www.kiz.cas.cn/"></a></div>
              <div class="pic_box"><a class="pic_banner_004" target="_blank" href="http://www.kiz.cas.cn/"></a></div>
              
            </div>
            <div class="viewArrows prev">上一张</div>
            <div class="viewArrows next">下一张</div>
            <div class="pics_switch_clients">
              <ul>
                <li class="li_1" style="list-style:none;"><span class="current">1</span></li>
                <li class="li_2" style="list-style:none;"><span>2</span></li>
                <li class="li_3" style="list-style:none;"><span>3</span></li>
                <li class="li_4" style="list-style:none;"><span>4</span></li>
                
              </ul>
            </div>
          </div>
        </div>
    
    (2)动态代码
          <div class="pics_switch">
            <div class="pb">
            
            <?php query_posts('cat=7 & posts_per_page=4');
                  while (have_posts()) : the_post();?>
            
           <div class="pic_box" > <img src="<?php echo catch_that_image() ?>" ><a class="pic_banner001" target="_blank" href="http://www.kiz.cas.cn/"></a></div>
    
            <?php endwhile;
                  wp_reset_query(); ?>               
    
            </div>
            <div class="viewArrows prev">上一张</div>
            <div class="viewArrows next">下一张</div>
            <div class="pics_switch_clients">
              <ul>
                <li class="li_1" style="list-style:none;"><span class="current">1</span></li>
                <li class="li_2" style="list-style:none;"><span>2</span></li>
                <li class="li_3" style="list-style:none;"><span>3</span></li>
                <li class="li_4" style="list-style:none;"><span>4</span></li>
    
              </ul>
            </div>
          </div>
    

    多级菜单

    来了,一个非常重磅的知识点来了!在开发过程中耗费我最多时间去钻研的东西,再加上中文网上这方面的博客都已经很老而且不太实用了,而本文是基于5.4.1的内容实现三级菜单,我愿称其为中文网wordpress第一文[狗头]

    (1)静态内容观察
    <div class="menu" style="width:1200px;text-align:left;">
    
    <ul class="nav">
    
    <li style="background-color:#14A73C;"><a href="http://www.kiz.cas.cn/">&nbsp;&nbsp;</a>
    	</li>
    
      <li><a href="http://www.kiz.cas.cn/jgsz/">机构设置</a>
    		<ul class="sub-nav">
            	<li><a href="http://www.kiz.cas.cn/jgsz/kyxt/">科研机构</a></li>
    			<li><a href="http://www.kiz.cas.cn/jgsz/glxt/">管理机构</a></li>
    			<li><a href="http://www.kiz.cas.cn/jgsz/zcxt/">支撑机构与技术平台</a></li>
    			<li><a href="http://www.kiz.cas.cn/jgsz/gkxh/">挂靠学会</a></li>
          
    		</ul>
    	</li>
    
    
    <li><a href="http://www.kiz.cas.cn/kycg/">科研成果</a>
        <ul class="sub-nav">	
            	<li><a href="http://www.kiz.cas.cn/kycg/hjcg/">获奖</a></li>
    			<li><a href="http://www.kiz.cas.cn/kycg/lw/">论文</a></li>
    			<li><a href="http://www.kiz.cas.cn/kycg/zz/">专著</a></li>
    			<li><a href="http://www.kiz.cas.cn/kycg/zl/">专利</a></li>
                 
    		</ul>
    	</li>
    	
    <ul>
    <div>
        
    
    (2)注册菜单
    register_nav_menus(array(
        'PrimaryMenu'=>'导航',
        'friendlinks'=>'友情链接',
        'footer_nav'=>'页脚导航')
        );
        add_theme_support('nav_menus');
    

    在function.php文件中加入该代码,注册菜单的形式menu

    (3)动态修改

    菜单的动态修改,实际上就是用php来取代相关块的类(class),由静态观察有最外层的ul为nav,最外层容器div为menu,因为此处的容器有内联css的形式,故不宜取代。

    <div class="menu" style="width:1200px;text-align:left;">
    
    	<?php
    			wp_nav_menu(array(
    						'theme_location' => 'PrimaryMenu',
    						'menu_class'   => 'nav',   //ul节点class值
    						'depth' => 0,
    
    					));
    	?>
    </div>
    
    (4)二级菜单

    二级菜单的即里面的

    • 标签带领的这些内容,而wordpress默认使用的类是“sub-menu”

    所以只需要把

    • 标签对应的css样式表的选择器(.sub-nav)改为“.sub-menu”即可

    nav li .sub-menu {
    position: absolute;
    top: 55px;
    left: 0px;
    list-style: none;
    background-color: #006E39;
    display: none;
    }
    
    .nav li .sub-menu li {
    text-align: center;                                                                                               
    clear: left;
    width: 180px;                                                                                                
    height: 40px;
    line-height: 40px;
    position: relative;
    border-top: 1px solid #2E7A4A;
    border-bottom: 1px solid #005E31;
    }
    
    .nav li .sub-menu li a {
    height: 40px;
    line-height: 40px;
    width: 180px;
    padding: 0;
    display: inline-block;
    }
    
    (5)三级菜单

    三级菜单这里我使用最简单的一种方法,修改wp-includes里的文件,默认第三级的类为“third-menu”

    修改的文件路径:根目录/wp-includes/class-walker-nav-menu.php

    (很多旧文章说的是修改nav-menu-template.php文件)

    修改内容:

    public function start_lvl( &$output, $depth = 0, $args = null ) {
    		if ( isset( $args->item_spacing ) && 'discard' === $args->item_spacing ) {
    			$t = '';
    			$n = '';
    		} else {
    			$t = "\t";
    			$n = "\n";
    		}
    		$indent = str_repeat( $t, $depth );
    
    		// 此处添加了一个条件判断,确定菜单层级
    		if($depth == 0){
    		$classes = array( 'sub-menu' );}
    
    		else{
    			$classes = array( 'third-menu' );
    		}
    

    通过if($depth == 0)条件句多加了一层third-menu的目录,然后再用修改第二级的方法修改第三级的css样式便大功告成啦!


    本文仿站对象:http://www.kiz.cas.cn/

    本文部分参考:https://wp.rollby.xin/

    展开全文
  • >:WordPress 版本 ('atom_url'); ?>:Atom URL ('rss2_url'); ?>:RSS 2.o URL ('url'); ?>:博客 URL ('html_type'); ?>:博客网页 HTML 类型 ('charset'); ?>:博客网页编码 ('description'); ?>:博客描述...

    目录

    准备:

    公共调用:

    首页调用:

    列表页调用:

    内容页调用:


    准备:首页、产品页、列表页、内容页、page页面静态页面。

    公共调用:

    首页调用:

    2-1、头部制作

    1、制作style.css

    1-1、移动images文件夹下面的css到主题文件夹下面,重命名为style.css

    添加主题版权信息:

     /*
    Theme Name: 我的模板A1
    Theme URI: https://www.nongyejing.com
    Description:我的模板A1 企业主题
    Author: 我的模板A1
    Author URI: https://www.nongyejing.com
    Version: 1.0
    Tags: 我的模板A1
    */

    如果后台乱码:要修改,css 的页面属性,如果网页出现乱码,要修改index.php的页面属性。修改——页面属性——编码。

    后台缩略图:在主题文件来下面放一个缩略图图片,缩略图的名字必须是:screenshot.png或者screenshot.jpg

    1-2、制作index.php

    1-2-1、修改css文件路径

    Style.css路径调用:<?php bloginfo( 'stylesheet_url' ); ?>
    jS调用:<?php echo get_template_directory_uri(); ?>/js/jquery.js
    调用顶部标签:<?php get_header();?>
    调用底部标签:<?php get_footer();?>
    底部菜单调用:<?php wp_nav_menu( array( 'theme_location' =>'footmenu','container' => '','menu_class' => 'navigation','menu_id' => "nav_sgBhgn",'depth' => 2, ) ); ?>
    版权信息:Copyright © 2012<a href=" <?php echo get_option('home'); ?>"> <?php bloginfo('name'); ?></a>
    缩略图的调用:<img src="<?php echo get_first_image(); ?>" alt="<?php the_title(); ?>" />
    网站标题:<?php if (is_home()||is_search()) { bloginfo('name'); } else { wp_title(''); print " - "; bloginfo('name'); } ?> 
    HOOK函数:<?php wp_head(); ?>
    网站域名地址:<?php bloginfo('url');?>
    获取主题目录:
        //第一种方法
        <?php bloginfo('template_url');?>
        //第二种方法
        <?php bloginfo('template_directory'); ?>
        //第三种方法
        <?php echo get_template_directory_uri(); ?>
    调用侧边栏标签:<?php get_sidebar();?>
    调用特定分类下的文章:直接复制到要显示分类的地方。cat=1为id=1下面的文章,showposts=5为显示5片文章。
        <?php if (have_posts()) : ?>
        <?php query_posts('cat=1' . $mcatID. '&caller_get_posts=1&showposts=5'); ?>
        <?php while (have_posts()) : the_post(); ?>
        <?php endwhile;?>
        <?php endif; wp_reset_query(); ?>
    文章标题的调用(控制字数):<a href="<?php the_permalink() ?>"> <?php echo mb_strimwidth(get_the_title(), 0, 32, ''); ?></a>
    标题不控制字数:<?php the_title(); ?>
    更多按钮链接,直接进入该分类页面地址调用::<?php echo get_option('home'); ?>/?cat=1
    产品树形结构调用: <?php wp_list_categories('title_li=0&orderby=name&show_count=0&depth=3'); ?>
    
    友情链接只在首页显示:
    <?php  if ( is_home()) { ?>
    <?php wp_list_bookmarks('title_li=&categorize=0&orderby=rand&limit=24'); ?>
    <?php } ?>
    
    
    分页代码:<?php kriesi_pagination($query_string); ?>
    
    
    
    
    
    基本条件判断函数:
    
    is_home():是否为主页
    
    is_single():是否为内容页 (Post)
    
    is_page():是否为内容页 (Page)
    
    is_category():是否为 Category/Archive 页
    
    is_tag():是否为标签 (Tag) 存档页
    
    is_date():是否为指定日期存档页
    
    is_year():是否为指定年份存档页
    
    is_month():是否为指定月份存档页
    
    is_day():是否为指定日存档页
    
    is_time():是否为指定时间存档页
    
    is_archive():是否为存档页
    
    is_search():是否为搜索结果页
    
    is_404():是否为 "HTTP 404: Not Found" 错误页
    
    is_paged():主页 /Category/Archive 页是否以多页显示
    
    Header 部分常用到的 PHP 函数:
    
    <?php bloginfo('name'); ?>:博客名称 (Title)
    
    <?php bloginfo('stylesheet_url'); ?>:CSS 文件路径
    
    <?php bloginfo('pingback_url'); ?>:PingBack URL
    
    <?php bloginfo('template_url'); ?>:模板文件路径
    
    <?php bloginfo('version'); ?>:WordPress 版本
    
    <?php bloginfo('atom_url'); ?>:Atom URL
    
    <?php bloginfo('rss2_url'); ?>:RSS 2.o URL
    
    <?php bloginfo('url'); ?>:博客 URL
    
    <?php bloginfo('html_type'); ?>:博客网页 HTML 类型
    
    <?php bloginfo('charset'); ?>:博客网页编码
    
    <?php bloginfo('description'); ?>:博客描述
    
    <?php wp_title(); ?>:特定内容页 (Post/Page) 的标题
    
    模板常用的 PHP 函数及命令:
    
    <?php get_header(); ?>:调用 Header 模板
    
    <?php get_sidebar(); ?>:调用 Sidebar 模板
    
    <?php get_footer(); ?>:调用 Footer 模板
    
    <?php the_content(); ?>:显示内容 (Post/Page)
    
    <?php if(have_posts()):?>:检查是否存在 Post/Page
    
    <?php while(have_posts()):the_post(); ?>:如果存在Post/Page则予以显示
    
    <?php endwhile; ?>:While 结束
    
    <?php endif; ?>:If 结束
    
    <?php the_time('字符串') ?>:显示时间,时间格式由"字符串"参数决定,具体参考 PHP 手册
    
    <?php comments_popup_link(); ?>:正文中的留言链接,如果使用 comments_popup_script(); 则新窗口打开链接
    
    <?php the_title(); ?>:内容页 (Post/Page) 标题
    
    <?php the_permalink() ?>:内容页 (Post/Page) URL
    
    <?php the_category(',') ?>:特定内容页 (Post/Page) 所属 Category
    
    <?php the_author(); ?>:作者
    
    <?php the_ID(); ?>:特定内容页 (Post/Page) ID
    
    <?php edit_post_link(); ?>:如果用户已登录并具有权限,显示编辑链接
    
    <?php get_links_list(); ?>:显示 Blogroll 中的链接
    
    <?php comments_template(); ?>:调用留言/回复模板
    
    <?php wp_list_pages(); ?>:显示 Page 列表
    
    <?php wp_list_categories(); ?>:显示 Categories 列表
    
    <?php next_post_link('%link '); ?>:下一篇文章链接
    
    <?php previous_post_link('%link'); ?>:上一篇文章链接
    
    <?php get_calendar(); ?>:日历
    
    <?php wp_get_archives() ?>:显示内容存档
    
    <?php posts_nav_link(); ?>:导航,显示上一篇/下一篇文章链接
    
    <?php include(TEMPLATEPATH . '/文件名'); ?>:嵌入其他文件,可为定制的模板或其他类型文件
    
    与模板相关的其他函数:
    
    <?php _e('Message'); ?>:输出相应信息
    
    <?php wp_register(); ?>:显示注册链接
    
    <?php wp_loginout(); ?>:显示登录/注销链接
    
    <!–next page–>:将当前内容分页
    
    <!–more–>:将当前内容截断,以不在主页/目录页显示全部内容
    
    <?php timer_stop(1); ?>:网页加载时间(秒)
    
    <?php echo get_num_queries(); ?>:网页加载查询量
    --------------------- 
    

    未完待续。。。。。同步更新:软盟网

     

     

     

    展开全文
  • 转自:wordpress仿站常用标签大全-68资源网 (68xi.com)https://www.68xi.com/21462.html WordPress Header头部 PHP代码 <?php bloginfo('name'); ?> 网站标题 <?php wp_title(); ?> 日志或页面...

    转自:wordpress仿站常用标签大全-68资源网 (68xi.com)icon-default.png?t=L892https://www.68xi.com/21462.html   

    WordPress Header头部 PHP代码

    <?php bloginfo('name'); ?> 网站标题
     
    <?php wp_title(); ?> 日志或页面标题
     
    <?php bloginfo('stylesheet_url'); ?> WordPress主题样式表文件style.css的相对地址
     
    <?php bloginfo('pingback_url'); ?> WordPress博客的Pingback地址
     
    <?php bloginfo('template_url'); ?> WordPress主题文件的相对地址
     
    <?php bloginfo('version'); ?> 博客的Wordpress版本
     
    <?php bloginfo('atom_url'); ?> WordPress博客的Atom地址
     
    <?php bloginfo('rss2_url'); ?> WordPress博客的RSS2地址
     
    <?php bloginfo('url'); ?> WordPress博客的绝对地址
     
    <?php bloginfo('name'); ?> WordPress博客的名称
     
    <?php bloginfo('html_type'); ?> 网站的HTML版本
     
    <?php bloginfo('charset'); ?> 网站的字符编码格式

    WordPress 主体模板 PHP代码

    <?php the_content(); ?> 日志内容
     
    <?php if(have_posts()) : ?> 确认是否有日志
     
    <?php while(have_posts()) : the_post(); ?> 如果有,则显示全部日志
     
    <?php endwhile; ?> 结束PHP函数”while”
     
    <?php endif; ?> 结束PHP函数”if”
     
    <?php get_header(); ?> header.php文件的内容
     
    <?php get_sidebar(); ?> sidebar.php文件的内容
     
    <?php get_footer(); ?> footer.php文件的内容
     
    <?php the_time('m-d-y') ?> 显示格式为”02-19-08″的日期
     
    <?php comments_popup_link(); ?> 显示一篇日志的留言链接
     
    <?php the_title(); ?> 显示一篇日志或页面的标题
     
    <?php the_permalink(); ?> 显示一篇日志或页面的永久链接/URL地址
     
    <?php the_post_thumbnail();?> 特色图片
     
    <?php the_category(', '); ?> 显示一篇日志或页面的所属分类
     
    <?php the_author(); ?> 显示一篇日志或页面的作者
     
    <?php the_ID(); ?> 显示一篇日志或页面的ID
     
    <?php edit_post_link(); ?> 显示一篇日志或页面的编辑链接
     
    <?php get_links_list(); ?> 显示Blogroll中的链接
     
    <?php comments_template(); ?> comments.php文件的内容
     
    <?php wp_list_pages(); ?> 显示一份博客的页面列表
     
    <?php wp_list_cats(); ?> 显示一份博客的分类列表
     
    <?php next_post_link(' %link ') ?> 下一篇日志的URL地址
     
    <?php previous_post_link('%link') ?> 上一篇日志的URL地址
     
    <?php get_calendar(); ?> 调用日历
     
    <?php wp_get_archives() ?> 显示一份博客的日期存档列表
     
    <?php posts_nav_link(); ?> 显示较新日志链接(上一页)和较旧日志链接(下一页)
     
    <?php bloginfo('description'); ?> 显示博客的描述信息
     
    <?php echo get_post_meta($post->ID, 'test', true); ?> 显示自定义栏目,修改text为字段key即可

    其它的一些Wordpress模板代码

    <?php the_search_query(); ?> 搜索表单的值
     
    <?php _e('Message'); ?> 打印输出信息
     
    <?php wp_register(); ?> 显示注册链接
     
    <?php wp_loginout(); ?> 显示登入/登出链接
     
    <!–next page–> 在日志或页面中插入分页
     
    <!–more–> 截断日志
     
    <?php wp_meta(); ?> 显示管理员的相关控制信息
     
    <?php timer_stop(1); ?> 显示载入页面的时间
     
    <?php echo get_num_queries(); ?> 显示载入页面查询

    分页代码

    <?php echo paginate_links( $args ); ?>

    默认循环代码

    <?php
            if ( have_posts() ) : 
            while ( have_posts() ) : the_post();
            the_content();//这里放置的是我们调用代码,你可以设置为需要调用的文章内容,自定义字段等
            endwhile;
            endif;
    ?>
    展开全文
  • 今天抽空分享一篇wordpress仿站的实战教程,起因是一个朋友感觉自己的网站速度慢,希望能耕换成wordress系统,经过一番交流,确定了要更改的网站栏目和主题风格中需要保留的东西,然后便开始正式仿站操作,因为是...

    今天抽空分享一篇wordpress仿站的实战教程,起因是一个朋友感觉自己的网站速度慢,希望能耕换成wordress系统,经过一番交流,确定了要更改的网站栏目和主题风格中需要保留的东西,然后便开始正式仿站操作,因为是仿制自己的网站,所以也不需要担心版权什么的,要考虑的就是主题仿制好后,把关键词的布局和原来做好对比,保障网站排名不会有大的波动就好。

    wordpress的主题订制,一般是对前端要求比较高,wordpress学会了,建站还是非常的快的。下面进行教程,没有基础知识的请先看基础知识。

    1.目标网站的抓取,使用仿站小工具8.0.2挺好用的,能够尽可能多的将整个网站抓取下来。

    b4f373c4431062ba33b1c90ac4e855c7.png

    将文件保存到wp-content/tust。保存的首页default.html和其他的文件目录如下:

    db5e597ec06e2a92e968d90adcb04ac1.png

    然后建立标准的wp文件。如下图所示:

    9ba6b5e8b8ee2615668ba322e9b6bc31.png

    将default.html分割到header.php, index.php, footer.php

    header.php 包含body再内的导航栏,等下还会贴出修改后的代码。

    index.php 包含主体部分,要引用header.php 和 footer.php。

    footer.php 包含最后的版权等信息。

    2.修改header.php中的链接使首页正常。其中常用的模板函数:

    WordPress主题 – 常用模板文件及用途style.css : CSS(样式表)文件,一般包括主题声明和通用css样式代码

    index.php : 主页模板,一般用来做网站的首页

    header.php : Header模板,一般是所有页面的头部公用部分

    sidebar.php : 侧边栏模板,一般显示Widget小工具

    footer.php : Footer模板,一般放些“关于我们”的页面链接、版权声明和统计代码等

    archive.php : Archive/Category模板,用来显示分类下的文章目录

    single.php : 内容页(Post)模板

    page.php : 内容页(Page)模板

    comments.php : 留言/回复模板

    searchform.php : 搜索表单模板,也就是我们看到的搜索框

    search.php : 搜索结果模板

    404.php : Not Found 错误页模板

    author.php :作者文章目录页面,罗列某个作者的文章,对于多作者博客尤为必要

    functions.php :模板函数,存放主题用到的函数模块,起到举足轻重的作用

    attachment.php :附件模板页面,WordPress的图片或其他上传的文件,都会赋予一个附件ID,如果你在插入图片时,选择链接到附件页面,主题中没有包含这个模板时就会报错。

    随着WordPress功能的增强,以及人们对于WordPress建站的功能需求的提高,现在的WordPress主题一般都不仅仅上面的文件了,不过再怎么复杂,上面的文件一般都是比较常用的,也是最基本的。

    WordPress主题 – 判断标签is_home() : 是否为主页,首页使用的是 index.php

    is_front_page() :是否为指定的首页,如果首页不是默认的index.php,比如你在后台 – 设置 – 阅读,指定了首页,就要用这个来判断

    is_single() : 是否为内容页(Post)

    is_page() : 是否为内容页(Page)

    is_attachment() :是否为附件页

    is_singular() :可以简单理解为 is_single()||is_page()||is_attachment() 的综合,但有区别

    is_category() : 是否为Category/Archive页

    is_tag() : 是否为Tag存档页

    is_date() : 是否为指定日期存档页

    is_year() : 是否为指定年份存档页

    is_month() : 是否为指定月份存档页

    is_day() : 是否为指定日存档页

    is_time() : 是否为指定时间存档页

    is_archive() : 是否为存档页

    is_search() : 是否为搜索结果页

    is_author() :是否为作者存档页

    is_404() : 是否为 “HTTP 404: Not Found” 错误页

    is_paged() : 主页/Category/Archive页是否以多页显示

    is_user_logged_in() :用户是否登录

    以上的判断标签,比较常用于面包屑导航和侧边栏中,用于判断不同的页面加载不同的内容,可以多个搭配一起用,有些还可以定义参数,运用的好的话,可以制定出很多不同的显示方案。

    WordPress主题 – 常用PHP函数<?php get_header(); ?> : 调用Header模板

    <?php get_sidebar(); ?> : 调用Sidebar模板

    <?php get_footer(); ?> : 调用Footer模板<?php bloginfo(‘html_type’); ?> : 网页Html类型

    <?php bloginfo(‘charset’); ?> : 网页编码

    <?php bloginfo(‘name’); ?>  : 博客名称(Title)

    <?php bloginfo(‘url’); ?> : 博客 Url

    <?php bloginfo(‘description’); ?> : 博客描述

    <?php bloginfo(‘stylesheet_url’); ?>  : CSS文件路径

    <?php bloginfo(‘template_url’); ?> : 模板文件路径

    <?php wp_head(); ?> : 头部挂钩(hook),非常重要的函数,基本上每一个主题都要用到,因为它是用来让其他插件或功能函数在网站头部输出css、js等文件的,如果主题没有这个函数,可能会造成很多插件无法正常使用,一般添加在 header.php 文件中

    <?php wp_footer(); ?> : 底部挂钩(hook),和 wp_head() 一样重要,功能也基本一样,一般添加在 footer.php 文件中

    <?php wp_nav_menu(); ?> : 调用导航菜单(WP 3.0+),一般需要在 functions.php 添加注册菜单函数 register_nav_menus() 一起使用

    <?php wp_list_bookmarks();?> 友情链接函数,虽然 WP 3.5 取消了链接管理功能,但是这个函数还是非常有用的<?php if(have_posts()) : ?> : 检查是否存在Post/Page

    <?php while(have_posts()) : the_post(); ?> : 如果存在Post/Page则显示

    <?php endwhile; ?> : While 结束

    <?php else :  ?> :如果 if 条件中不存在Post/Page ,就输出其他内容

    <?php endif; ?> : If 结束

    <?php query_posts(); ?>: 限定Loop循环条件,更灵活地调用需要的文章

    <?php wp_reset_query(); ?>:重置查询数据,它必须使用在loop(循环)中,如果你使用了什么的 <?php query_posts(); ?> 函数获取内容,那最好在获取内容的最后添加这个函数,一般这两个都是成对使用。<?php the_title(); ?> : 内容页(Post/Page)标题

    <?php the_permalink() ?> : 内容页(Post/Page) Url

    <?php the_category(‘, ‘) ?> : 特定内容页(Post/Page)所属Category

    <?php the_author(); ?> : 作者(只显示作者名字,没有链接)

    <?php the_author_posts_link(); ?> :作者(显示作者,并且包含链接到作者文章目录的链接)

    <?php the_time(‘Y-m-d’) ?> :显示时间,时间格式由“字符串”参数决定,具体参考PHP手册

    <?php echo get_post_meta(); ?> : 获取保存在 post_meta 这个表中的数据,比如输出某个 自定义字段 的内容

    <?php the_ID(); ?> : 特定内容页(Post/Page) ID

    <?php the_tags(‘关键字: ‘, ‘, ‘, ”); ?> :显示文章的关键字tag

    <?php the_excerpt(); ?> :Post/Page 的摘要,输入文章发布页面中的摘要面板的内容

    <?php the_content(‘more’); ?> :Post/Page 的摘要,配合  来使用

    <?php the_content(); ?>  : 显示内容(Post/Page) 全文

    <?php wp_list_pages(); ?> : 显示Page列表,常用于显示单篇文章的分页,配合  来使用

    <?php edit_post_link(); ?> : 如果用户已登录并具有权限,显示编辑链接

    <?php posts_nav_link(); ?> : 显示上一页/下一页的链接,通常用在索引页、分类页和文章存档页

    <?php previous_post_link(‘%link’, ‘上篇’, TRUE); ?> : 下一篇文章链接,通常用在单篇文章 single.php 中

    <?php next_post_link(‘%link’, ‘下篇’, TRUE); ?> : 上一篇文章链接,通常用在单篇文章 single.php 中

    <?php comments_popup_link(‘暂无评论’, ‘评论数 1’, ‘评论数 %’); ?>  : 正文中的留言链接。如果使用 comments_popup_script(),则留言会在新窗口中打开,反之,则在当前窗口打开

    <?php comments_template( ”, true ); ?> :显示评论模块<?php include(TEMPLATEPATH . ‘/xxx/xxxx.php’); ?> : 嵌入其他文件,可为定制的模板或其他类型php文件,很常用

    <?php echo get_avatar( get_the_author_email(), ’48’ ); ?> :根据作者邮箱输出作者的头像

    <?php wp_list_categories(); ?> : 显示Categories列表

    <?php get_calendar(); ?>  : 日历

    <?php wp_get_archives() ?>  : 显示内容存档

    <?php _e(‘Message’); ?> : 输出相应信息

    <?php wp_register(); ?> : 显示注册链接

    <?php wp_loginout(); ?> : 显示登录/注销链接

    <?php timer_stop(1); ?> : 网页加载时间(秒)

    <?php echo get_num_queries(); ?> : 网页加载查询量

    展开全文
  • wordpress仿站实战教程

    万次阅读 2017-08-09 21:37:13
    有一个月没有写blog了,一直在学习wordpress的知识,现在能够进行简单的政府企业门户网站的仿制,wordpress的主题订制,一般是对前端要求比较高,wordpress学会了,建站还是非常的快的。下面进行教程,没有基础知识...
  • WordPress仿站实战教程

    千次阅读 2019-01-20 17:47:00
     有一个月没有写blog了,一直在学习wordpress的知识,现在能够进行简单的政府企业门户网站的仿制,wordpress的主题订制,一般是对前端要求比较高,wordpress学会了,建站还是非常的快的。下面进行教程,没有基础...
  • wordpress调用一些想用的调用: Style.css路径调用: bloginfo( 'stylesheet_url' ); ?> jS调用:(); ?>/js/jquery.js 调用顶部标签:();?> 调用底部标签:();?> 底部菜单调用:( array( 'theme_location' =...
  • 3、下载WordPress 4、将下载的WordPress文件放到www目录下 5、通过login.php访问登录页(localhost/wp-admin/login.php)具体地址看你本地 6、登录进入站点 数据库账号密码 root WordPress登录账号密码 admin 加载太...
  • 最近帮朋友仿站,对wordpress的代码调用做一个记录,以备后面使用。 仿站准备: 使用仿站小工具 V8.2对目标网站进行页面下载 在wordpress的wp-content\themes目录下新建文件夹 创建一些php文件。 wordpress...
  • 我用仿站小工具   复制代码到主题的相关模板页  上传img,css,js  替换html(index.php,category.php,single.php) img/ => () ?>/img/ css/ => () ?>/css/   提取header和footer (); ?> ();...
  • wordpress函数调用手册大全[仿站必备]

    千次阅读 2014-02-11 09:26:13
    整理汇总WordPress模板的基本资料和简单的函数说明,希望帮助喜欢wordpress仿站的朋友,有时候仿站很难记住每一个标签和代码,这时候就需要一个手册了,下面看看wordpress调用大全吧。 WordPress基本模板文件 ...

空空如也

空空如也

1 2 3 4 5 ... 8
收藏数 159
精华内容 63
关键字:

wordpress仿站