<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>WORDPRESS主题技术 &#8211; 九创科技</title>
	<atom:link href="https://www.3code.cn/tag/wordpress/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.3code.cn</link>
	<description>Wordpress外贸企业主题, Wp企业主题, wordpress企业主题, wordpress主题定制, WORDPRESS外贸网站建设SEO</description>
	<lastBuildDate>Thu, 22 May 2014 03:47:58 +0000</lastBuildDate>
	<language>zh-Hans</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	
	<item>
		<title>WordPress摄影主题模板简洁大气9cPhoto</title>
		<link>https://www.3code.cn/9cphoto/</link>
		
		<dc:creator><![CDATA[寒林]]></dc:creator>
		<pubDate>Tue, 08 Apr 2014 03:46:59 +0000</pubDate>
				<category><![CDATA[WordPress外贸企业主题]]></category>
		<category><![CDATA[WORDPRESS主题技术]]></category>
		<category><![CDATA[wordpress企业主题]]></category>
		<category><![CDATA[WordPress企业模板]]></category>
		<category><![CDATA[Wordpress外贸企业网站 深圳网站建设]]></category>
		<guid isPermaLink="false">https://www.3code.cn/?p=3614</guid>

					<description><![CDATA[九创WordPress图片摄影展示主题9cPhoto 本主题主要以图片展示为主，页面可以展示用来展示<a class="moretag" href="https://www.3code.cn/9cphoto/"> 阅读更多&#8230;</a>]]></description>
										<content:encoded><![CDATA[<p><img fetchpriority="high" decoding="async" class="aligncenter size-full wp-image-3616" alt="wordpressgallery" src="https://www.3code.cn/download/2014/05/wordpressgallery.jpg" width="699" height="585" /></p>
<p><strong>九创WordPress图片摄影展示主题9cPhoto</strong></p>
<p>本主题主要以图片展示为主，页面可以展示用来展示图片，红灯片播放，同时有博客。</p>
<p>适合摄影、图片展示类的网站。简洁大气，自适应多种设备浏览。</p>
<p><strong>主题预览：<a href="http://wp.9cweb.com/photo/" target="_blank">http://wp.9cweb.com/photo/</a></strong></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>WordPress实现ajax文章顶踩代码</title>
		<link>https://www.3code.cn/wordpress-ajax-like/</link>
		
		<dc:creator><![CDATA[寒林]]></dc:creator>
		<pubDate>Sat, 15 Feb 2014 10:40:58 +0000</pubDate>
				<category><![CDATA[WORDPRESS教程]]></category>
		<category><![CDATA[WORDPRESS主题技术]]></category>
		<category><![CDATA[wordpress教程]]></category>
		<guid isPermaLink="false">https://www.3code.cn/?p=3409</guid>

					<description><![CDATA[本篇教程要实现的内容为文章定踩功能，或者说“喜欢”“不喜欢”。 实现步骤： 本实例以上图所示喜欢和不<a class="moretag" href="https://www.3code.cn/wordpress-ajax-like/"> 阅读更多&#8230;</a>]]></description>
										<content:encoded><![CDATA[<p>本篇教程要实现的内容为文章定踩功能，或者说“喜欢”“不喜欢”。 实现步骤： 本实例以上图所示喜欢和不喜欢为例。 <strong>一、新建数据表</strong> 新建数据表，将文章投票数据保存在新的数据表中，我们需要记录用户ID，文章ID，投票内容，用户ip，新数据表如下： <img decoding="async" class="aligncenter size-full wp-image-3410" alt="table" src="https://www.3code.cn/download/2014/02/table.png" width="405" height="194" srcset="https://www.3code.cn/download/2014/02/table.png 405w, https://www.3code.cn/download/2014/02/table-300x143.png 300w" sizes="(max-width: 405px) 100vw, 405px" />实现新建数据表代码如下，将代码添加进主题的functions.php(或自定)文件中：</p>
<pre>    /*********更新重写规则***************/  
    function ashu_load_theme() {   
        global $pagenow;   
        if ( is_admin() &amp;&amp; 'themes.php' == $pagenow &amp;&amp; isset( $_GET['activated'] ) )   
            ashu_vote_install(); //激活主题的时候执行函数   
    }   
    add_action( 'load-themes.php', 'ashu_load_theme' );   
    function ashu_vote_install(){   
        global $wpdb;   
        //创建 _post_vote表   
        $table_name = $wpdb-&gt;prefix . 'post_vote';   
        if( $wpdb-&gt;get_var("SHOW TABLES LIKE '$table_name'") != $table_name ) :   
        $sql = " CREATE TABLE `".$wpdb-&gt;prefix."post_vote` (
          `id` BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY ,  
          `user` INT NOT NULL ,  
          `post` INT NOT NULL ,  
          `rating` varchar(10),  
          `ip` varchar(40)  
         ) ENGINE = MYISAM DEFAULT CHARSET=utf8;";   
            require_once(ABSPATH . 'wp-admin/includes/upgrade.php');   
            dbDelta($sql);   
        endif;   
    }</pre>
<p><strong>二、准备投票和查询函数</strong> 准备数据库操作函数，包括添加数据函数和查询数据，将如下函数代码也添加到主题的functions.php文件(或自定)： <strong>1、添加数据函数</strong></p>
<pre>    /*  
    *添加投票函数  
    *$post_id 文章id  
    *$user_id 用户ID  
    *$ip 用户IP  
    *$rating 投票内容  
    */  
    function add_vote($post_id,$user_id='',$ip='',$rating='up'){   
        global $wpdb;   
        $user_id = (int)$user_id;   
        $post_id = (int)$post_id;   
        if(($user_id=='')&amp;&amp;($ip=='')){   
            return "e"; //返回error   
        }   
        //检查用户对某一文章是否已经投票票了   
        if($user_id!=''){   
            $check= "select * from ".$wpdb-&gt;prefix."post_vote where post='$post_id' and user='$user_id'";   
        }else{   
            if($ip!=''){   
                $check= "select * from ".$wpdb-&gt;prefix."post_vote where post='$post_id' and ip='$ip'";   
            }   
        }   
        $coo = $wpdb-&gt;get_results($check);   
        //投票内容只能是up或者down   
        if($rating=='up'){   
            $rating='up';   
        }else{   
            $rating='down';   
        }   
        //如果不存在数据   
        if(!count($coo) &gt; 0){   
            //插入数据 sql   
            $s = "insert into ".$wpdb-&gt;prefix."post_vote (user,post,rating,ip) values('$user_id','$post_id','$rating','$ip')";   
            $wpdb-&gt;query($s);   
            return "y"; //返回yes   
        }else{   
            return "h"; //返回have   
        }   
        return "e";//返回error   
    }</pre>
<p><strong>2、查询投票数据函数</strong> 比如查询某文章点击up的数据，则使用 get_post_vote(1,&#8217;up&#8217;);</p>
<pre>    /*   
    *获取文章投票数据   
    *$post_id 文章ID   
    *$vote 投票内容   
    */   
    function get_post_vote($post_id,$vote='up'){   
        global $wpdb;   
        $post_id = (int)$post_id;   
        if($vote == 'up'){   
            $vote='up';   
        }else{   
            $vote='down';   
        }   
        //查询数据sql   
        $sql = "select count(*) from ".$wpdb-&gt;prefix."post_vote where post='$post_id' and rating='$vote'";   
        $coo = $wpdb-&gt;get_var($sql);   
        if($coo)   
        return $coo; //返回数据   
        else   
        return 0;   
    }</pre>
<p><strong>三、准备前台html和js</strong> 建立好了新的数据表，也准备好了实现投票功能的函数，接下来看前台的html和js。 1、网页前台显示数据，将下面的代码放在输出文章的循环内，即常说的loop中。</p>
<div class="dp-highlighter">&lt;span class=&#8221;vote_up&#8221; id=&#8221;&lt;?php echo &#8216;vote_up&#8217;.$post-&gt;ID;?&gt;&#8221;&gt;<br />
&lt;a href=&#8221;javascript:void(0);&#8221; rel=&#8221;&lt;?php echo &#8216;up_&#8217;,$post-&gt;ID;?&gt;&#8221;&gt;<br />
&lt;span id=&#8221;&lt;?php echo &#8216;vup&#8217;.$post-&gt;ID;?&gt;&#8221;&gt;<br />
&lt;?php echo get_post_vote($post-&gt;ID,&#8217;up&#8217;);?&gt;<br />
&lt;/span&gt;<br />
&lt;/a&gt;<br />
人认为值得买！&lt;/span&gt;&lt;span class=&#8221;vote_down&#8221; id=&#8221;&lt;?php echo &#8216;vote_down&#8217;.$post-&gt;ID;?&gt;&#8221;&gt;<br />
&lt;a href=&#8221;javascript:void(0);&#8221; rel=&#8221;&lt;?php echo &#8216;down_&#8217;.$post-&gt;ID;?&gt;&#8221;&gt;<br />
&lt;span id=&#8221;&lt;?php echo &#8216;vdown&#8217;.$post-&gt;ID;?&gt;&#8221;&gt;<br />
&lt;?php echo get_post_vote($post-&gt;ID,&#8217;down&#8217;);?&gt;<br />
&lt;/span&gt;<br />
&lt;/a&gt;人认为不值得买！<br />
&lt;/span&gt;</p>
</div>
<p>上面代码将会输出一个如下的html结构<span class="vote_down" id="vote_down44"><br />
</span></p>
<p>&lt;span class=&#8221;vote_up&#8221; id=&#8221;vote_up44&#8243;&gt;<br />
&lt;a href=&#8221;javascript:void(0);&#8221; title=&#8221;值得&#8221; rel=&#8221;up_44&#8243;&gt;<br />
&lt;span id=&#8221;vup44&#8243;&gt;<br />
0<br />
&lt;/span&gt;<br />
&lt;/a&gt;<br />
人认为值得买！&lt;/span&gt;<br />
&lt;span class=&#8221;vote_down&#8221; id=&#8221;vote_down44&#8243;&gt;<br />
&lt;a href=&#8221;javascript:void(0);&#8221; title=&#8221;不值&#8221; rel=&#8221;down_44&#8243;&gt;<br />
&lt;span id=&#8221;vdown44&#8243;&gt;<br />
1<br />
&lt;/span&gt;<br />
&lt;/a&gt;人认为不值得买！<br />
&lt;/span&gt;<br />
<span class="vote_down" id="vote_down44"> </span></p>
<p><strong>四、js代码</strong></p>
<p>本篇教程中和上一篇一样，我们同样使用jquery发起ajax请求，所以首先在网页头部加载jquery代码，我在主题底部文件footer.php中加载jqeury。我将jquery-1.7.2.min.js放在了主题文件夹的js文件夹里面，所以用get_template_directory_uri()函数来输出主题的url</p>
<div class="dp-highlighter"><span><span class="tag">&lt;</span><span class="tag-name">script</span><span> </span><span class="attribute">src</span><span>=</span><span class="attribute-value">&#8220;&lt;?php echo get_template_directory_uri();?&gt;/js/jquery-1.7.2.min.js&#8221;</span><span class="tag">&gt;</span><span class="tag">&lt;/</span><span class="tag-name">script</span><span class="tag">&gt;</span><span>   </span></span></div>
<p>然后我将发起ajax请求代码也放在了主题里面js文件夹中的ashu.js文件，所以再加上一个 其中输出了ajax请求的地址：www.3code.cn/wp-admin/admin-ajax.php</p>
<p>&lt;script type=&#8221;text/javascript&#8221;&gt;var ajax_url = &#8216;&lt;?php echo admin_url(); ?&gt;admin-ajax.php&#8217;;&lt;/script&gt;<br />
&lt;script src=&#8221;&lt;?php echo get_template_directory_uri();?&gt;/js/ashu.js&#8221;&gt;&lt;/script&gt;</p>
<p>ashu.js文件中的代码:</p>
<pre>    /**     
     * by ashu.     
     * URI: http://www.ashuwp.com     
     */   

    /**   
     * 获取Cookie   
     *name  cookie名称   
     */   
    function getCookie(name) {   
        var start = document.cookie.indexOf( name + "=" );   
        var len = start + name.length + 1;   

        if ( ( !start ) &amp;&amp; ( name != document.cookie.substring( 0, name.length ) ) )   
            return null;   

        if ( start == -1 )   
            return null;   

        var end = document.cookie.indexOf( ';', len );   

        if ( end == -1 )   
            end = document.cookie.length;   
        return unescape( document.cookie.substring( len, end ) );   
    }   
    function ashu_isCookieEnable() {   
        var today = new Date();   
        today.setTime( today.getTime() );   
        var expires_date = new Date( today.getTime() + (1000 * 60) );   

        document.cookie = 'ashu_cookie_test=test;expires=' + expires_date.toGMTString() + ';path=/';   
        var cookieEnable = (getCookie('ashu_cookie_test') == 'test') ?  true : false;   
        //document.cookie = 'ludou_cookie_test=;expires=Fri, 3 Aug 2001 20:47:11 UTC;path=/';   
        return cookieEnable;   
    }   

    jQuery(document).ready(function($) {   
        var ashu_token = 1;   
        $('.vote_up a').click(function(){   
            //检查浏览器是否启用cookie功能   
            if( !ashu_isCookieEnable() ) {   
                alert("很抱歉，您不能给本文投票！");   
                return;   
            }   
            if( ashu_token != 1 ) {   
                alert("您的鼠标点得也太快了吧？！");   
                return false;   
            }   
            ashu_token = 0;   
            //获取投票a标签中的rel值   
            var full_info = $(this).attr( 'rel' );   
            var arr_param = full_info.split( '_' ); //以字符"_"分割   
            //发起ajax   
            $.ajax({   
                url:ajax_url, //ajax地址   
                type:'POST',   
                //请求的参数包括action   rating  postid三项   
                data:'action=vote_post&amp;rating=' + arr_param[ 0 ] + '&amp;postid=' + arr_param[ 1 ],   
                //返回数据   
                success:function(results){   
                    if(results=='n'){   
                        alert('评价失败');   
                        ashu_token = 1;   

                    }   
                    if (results=='y'){   
                        //如果成功，给前台数据加1   
                        var upd_vd = 'vup' + arr_param[ 1 ];   
                        $('#'+upd_vd).text(parseInt($("#"+upd_vd).text())+1);   
                        ashu_token = 1;   

                    }   
                    if (results=='h'){   
                        ashu_token = 1;   
                        alert('已经发表过评价了');   
                    }   
                    if (results=='e'){   
                        ashu_token = 1;   
                        alert('评价失败');   
                    }   
                }   
            });   
        });   

        $('.vote_down a').click(function(){   
            if( !ashu_isCookieEnable() ) {   
                alert("很抱歉，您不能给本文投票！");   
                return;   
            }   
            if(ashu_token != 1) {   
                alert("您的鼠标点得也太快了吧？！");   
                return false;   
            }   
            ashu_token = 0;   

            var full_info = $(this).attr( 'rel' );   
            var arr_param = full_info.split( '_' );   
            $.ajax({   
                url:ajax_url,   
                type:'POST',   
                data:'action=vote_post&amp;rating=' + arr_param[ 0 ] + '&amp;postid=' + arr_param[ 1 ],   
                success:function(results){   
                    if(results=='n'){   
                        alert('评价失败');   
                        ashu_token = 1;   
                    }   
                    if (results=='y'){   
                        var upd_vd = 'vdown' + arr_param[ 1 ];   
                        $("#"+upd_vd).text(parseInt($("#"+upd_vd).text())+1);   
                        ashu_token = 1;   
                    }   
                    if (results=='h'){   
                        ashu_token = 1;   
                        alert('已经发表过评价了');   
                    }   
                    if (results=='e'){   
                        ashu_token = 1;   
                        alert('发生未知错误');   
                    }   
                }   
            });   
        });   
    });</pre>
<p><strong>五、后台php处理代码。</strong> 在前面的教程中，我们的ajax请求地址直接是网站页码地址，但是本篇教程中，我们的ajax请求地址是类似：www.ashuwp.com/wp-admin/admin-ajax.php 使用这个地址来处理ajax请求，请一定记得请求中需要有action参数，然后我们只需要在functions.php文件(或自定)中添加下马代码，即可处理我们的请求，注意执行完请求输出内容之后，添加die函数结束：</p>
<pre>    /*   
    *wp的ajax都可以通过请求中的action参数来执行对应的钩子   
    *示例中我们的action参数值是vote_post   
    *所以我们可以直接用下面两个钩子来执行动作   
    */   
    add_action("wp_ajax_vote_post", "add_votes_options");   
    add_action("wp_ajax_nopriv_vote_post", "add_votes_options");   
    function add_votes_options() {   

    if( isset($_POST['action']) &amp;&amp; ($_POST['action'] == 'vote_post') ){   
        $postid = (int)$_POST['postid'];   
        if( !$postid ){   
            echo 'e'; //输出error   
            die(0);   
        }   
        //cookie中是否已经存在投票数据   
        $voted = $_COOKIE["smzdm_voted_".$postid];   
        if( $voted ){   
            echo 'h'; //输出have   
            die(0);   
        }   
        $ip = $_SERVER['REMOTE_ADDR'];//ip   
        $rating = $_POST['rating']; //投票内容   
        //判断用户是否登录   
        if(  is_user_logged_in() ){   
            global $wpdb, $current_user;   
            get_currentuserinfo();   
            $uid = $current_user-&gt;ID;   
        }else{   
            $uid='';   
        }   
        if($rating=='up'){   
            $rating='up';   
        }else{   
            $rating='down';   
        }   
        //添加数据   
        $voted = add_vote($postid,$uid,$ip,$rating);   
        if($voted=='y'){   
            //设置cookie   
            setcookie("ashu_voted_" . $postid,$rating, time() + 3000000, '/');   
            echo 'y';//输出yes   
            die(0);   
        }   
        if($voted=='h'){   
            //设置cookie   
            setcookie("ashu_voted_" . $postid,$rating, time() + 3000000, '/');   
            echo 'h';   
            die(0);   
        }   
        if($voted=='e'){   
            echo 'n';//输出no   
            die(0);   
        }   
    }else{   
        echo 'e';//输出eroor   
    }   
    die(0);   
    }</pre>
<p><strong>六、结束</strong> 本票教程并非实现定踩或喜欢功能的最佳选择，只是提供一个ajax的简单示例&#8230;</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>什么是WordPress,为什么搞外贸SEO优化网站的都用这个?</title>
		<link>https://www.3code.cn/whatiswordpress/</link>
		
		<dc:creator><![CDATA[寒林]]></dc:creator>
		<pubDate>Fri, 08 Nov 2013 11:16:08 +0000</pubDate>
				<category><![CDATA[外贸SEO]]></category>
		<category><![CDATA[WORDPRESS主题技术]]></category>
		<category><![CDATA[WordPress企业建站]]></category>
		<guid isPermaLink="false">https://www.3code.cn/?p=3285</guid>

					<description><![CDATA[什么是WordPress,为什么搞外贸SEO优化网站的都用这个? WORDPRESS是时下很流行的一<a class="moretag" href="https://www.3code.cn/whatiswordpress/"> 阅读更多&#8230;</a>]]></description>
										<content:encoded><![CDATA[<p><strong>什么是WordPress,为什么搞外贸SEO优化网站的都用这个?</strong></p>
<p>WORDPRESS是时下很流行的一个热门IT业词汇，即使你没有使用过WORDPRESS，也会频繁地听到这个词？ 什么是WORDPRESS呢？ WORDPRESS就是现在全世界最流行最主流的一个开源博客(blog)建站程序，完美地解决了用户搭建独立博客的需求，用户不再需要掌握什么复杂的建站技术，傻瓜式的搭建办法可以让任何人在5分钟内拥有自己的独立博客。</p>
<p>WORDPRESS的官网有两个，一个是<a href="http://www.wordpress.com">wordpress.com</a>，通过这个网站，任何人都可以申请到免费的个人wordpress博客 xxx.wordpress.com ，这个免费博客是由WORDPRESS.COM提供的，申请好之后马上就可以用了（不涉及到数据库的创建以及WORDPRESS的安装）。作为新手的话，可以申请一个先感觉一下，登陆进入博客后台管理，熟悉一下主题、插件等功能。但这个由wordpress.com提供的免费WORDPRESS博客与自己创建的WORDPORESS独立博客相比，功能不完善。当然作为一个免费BLOG服务，这已经是相当伟大了。但最为遗憾的是在中国访问wordpress.com提供的免费博客经常连接不上（非wordpress.com的原因，此处省略）。</p>
<p>我们常说的WORDPRESS博客并不是指上一段所提的WORDPRESS.COM所提供的免费博客，而是指自己去下载wordpress开源程序，然后安装在自己的空间的拥有自己独立域名的独立博客。有些一知半解的朋友说起wordpress博客就会说“我知道，但是访问不了啊”，这就真是不明真相了，因为他们所指的无法访问指的是xxx.wordpress.com这种免费博客。而对于你自己建的WORDPRESS独立博客来说，是否能访问完全取决于你自己的空间IP，所以根本不存在“wordpress博客都无法访问“这一说法。</p>
<p>安装WORDPRESS独立博客？这个很简单，到wordpress的另一个官方网站 <a href="http://www.wordpress.org">wordpress.org </a>去下载最新的开源程序，然后上传到自己的网站空间进行安装即可。如果不会安装，可以在网上搜索相关教程，搜索结果那叫一个汗牛充栋！此程序需要php+mysql支持，安装方法很简单，比ZENCART DISCUZ论坛这些要容易得多。</p>
<p>最后再说一下wordpress博客为什么特别受到SEO从业者们的喜爱。SEO业内人士都知道外链为王，为了提升自己客户网站的关键词排名，除了确定锚字外，大量的网站外链（多IP更佳）是制胜法宝。而创建一个新站的最简单的办法就是利用WORDPRESS博客程序快速创建，这可以极大地提高建站效率。还有一点就是搜索引擎十分喜爱WORDPRESS这种形式的站点，WORDPRESS本身的代码设计十分符合搜索引擎的喜好，此外还可以通过SEO插件来进一步让自己的WORDPRESS站点得到搜索引擎的青睐。</p>
<p>WORDPRESS独立博客的用户分为以下三大类：</p>
<p>1. 个人独立博客用户。<br />
2. 企业用户，用WORDPRESS创建自己的企业网站。 这点已经非常获得企业认可，比其它程序做出来的效果完全不同，很多企业已经从<a href="https://www.3code.cn"><strong>WordPress企业建站</strong></a>方面获得了不少的订单。<br />
3. 从事SEO的行业人员。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>WordPress页面导航”面包屑”插件 &#8211; Breadcrumb NavXT</title>
		<link>https://www.3code.cn/wordpress-breadcrumb-navxt/</link>
		
		<dc:creator><![CDATA[寒林]]></dc:creator>
		<pubDate>Thu, 25 Oct 2012 13:21:53 +0000</pubDate>
				<category><![CDATA[wordpress插件]]></category>
		<category><![CDATA[breadcrumb navxt]]></category>
		<category><![CDATA[WORDPRESS主题技术]]></category>
		<category><![CDATA[导航]]></category>
		<category><![CDATA[面包屑]]></category>
		<guid isPermaLink="false">https://www.3code.cn/?p=3073</guid>

					<description><![CDATA[如果你是一个wordpress博客使用者，随着博客文章增多，文章分类越来越多，文章标签也越来越多，当<a class="moretag" href="https://www.3code.cn/wordpress-breadcrumb-navxt/"> 阅读更多&#8230;</a>]]></description>
										<content:encoded><![CDATA[<p>如果你是一个wordpress博客使用者，随着博客文章增多，文章分类越来越多，文章标签也越来越多，当访问者进入到一篇文章浏览时，有时会发现处于你博客文章大海中，找不到出口了。</p>
<p>使用面包屑导航栏设计可以很好增加你的网站的用户体验感。所谓面包屑导航栏设计就是告诉访问者正处于网站的哪个位置上，例如当有人访问免费资源部落的wordpress教程时候，在页面中的面包屑导航栏比如：你现在所处的位置是：首页&#8211;》免费教程 》免费wordpress教程 就可以很好地让浏览者知道自己的正确位置。从而增强博客的可读性和亲和力。</p>
<p>Breadcrumb NavXT是一款非常不错的WordPress页面导航&#8221;面包屑&#8221;插件，使用Breadcrumb NavXT可以随心所欲地在你的博客中任意位置设置面包屑breadcrumb导航。下面免费资源部落就来为大家详细介绍它的使用方法。</p>
<p>Breadcrumb NavXT插件使用方法教程</p>
<p>1、首先下载Breadcrumb NavXT插件：Breadcrumb NavXT下载地址,官方地址：http://wordpress.org/extend/plugins/breadcrumb-navxt/</p>
<p>2、将插件上传到wordpress博客的plugin文件夹中，进入插件选项中激活插件。将下面的代码放在你主题的文件中，一般是放header文件中。</p>
<p>    < ?php if(function_exists('bcn_display'))
    {
        bcn_display();
    }?></p>
<p>3、现在进入“设置”选项中找到“Breadcrumb NavXT”，点击进入插件的设置页面。</p>
<p>Breadcrumb NavXT设置页面</p>
<p>4、这里共有：general、current item、posts&#038;pages、categories、tags、date archives、miscellaneous等相关设置。</p>
<p>breadcrumb navxt setting</p>
<p>5、general设置：</p>
<p>Breadcrumb Separator表示导航中的分隔符，默认的是：&#038;gt，即“>”符号，例如：免费教程>免费wordpress教程，你也可以替换成其它的符号。注意分隔符要用分号隔开。</p>
<p>Breadcrumb Max Title Length这是设置面包屑导航标题的最大长度，你可以在这里填入数值。</p>
<p>Home Breadcrumb设置主页的标题，后面的Place the home breadcrumb in the trail.如果打勾的话表示在面包屑导航中显示主页，不打勾的话则不显示。Home Title则是填入主页的显示标题，默认是blog，你可以改成主页，或者回到主页等。</p>
<p>breadcrumb navxt 修改主页显示标题</p>
<p>Home Prefix可以在主页前面添加说明文字，Home Suffix在主页后面添加说明文字，例如添加Home Prefix为免费，Home Suffix添加了部落。在面包屑中显示为：</p>
<p>breadcrumb navxt 添加主页说明文字</p>
<p>Home Anchor、Blog Anchor一般不需要修改，插件会自动生成链接。</p>
<p>6、current item设置：</p>
<p>Link Current Item表示是否设置当前页面链接。Current Item Prefix和Current Item Suffix可以设置任意面包屑导航栏目的前后修饰性文字，rrent Item Anchor默认的链接就可以了。Paged Breadcrumb、Paged Prefix、Paged Suffix是用来设置页面的面包屑导航，设置方法同上。</p>
<p>7、posts&#038;pages设置项：Post Prefix、Post Suffix、Post Anchor、Page Prefix、Page Suffix、Attachment Prefix等选项的基本上设置方法同上，需要注意的是：</p>
<p>Post Taxonomy Display如果勾选的话表示在按照主页-分类-子分类-文章等形式显示出来，如果勾选的话表示只分按照主页-文章显示出来。免费资源部落建议你勾选。</p>
<p>Post Taxonomy表示按照什么来进行导航，有分类目录和标签可以选择。</p>
<p>8、categories的设置方法基本同上，如果你是将面包屑导航设置为分类的话，可以在这里对分类栏目进行修改，方法同上。Tag设置项可以用来调整标签的显示样式，你可以用Tag Prefix在导航标签前页添加一个说明文字，Tag Suffix是在标签后面添加一个说明文字。其他的设置方法同上。</p>
<p>9、date archives这里可以修改文章日期分类面包屑导航显示样式。chive by Date Prefix设置历史分章时间前面的说明文字，Archive by Date Suffix这个可以设置时间后面的说明文字。</p>
<p>10、miscellaneous选项里提供了Author、Search、404页面的面包屑导航设置。如果你的文章分类是按照作者来分类的话，Author Prefix可以让你在导航前页添加说明文字，例如一篇署名为：免费资源部落的文章教程，那么你可以在Author Prefix添加说明文字：“本文作者是：”，这样在导航栏中就会显示出：主页>免费教程>本文作者是：免费资源部落。Author Suffix则可以在作者名称后面添加说明文字。</p>
<p>Search Prefix可以让你添加搜索结果前的面包导航栏目说明文字，默认的是：rch results for：，你可以把它替换成你想要显示的文字。</p>
<p>404 Title可以设置404页面面包屑导航标题，例如当你打开一个免费资源部落根本不存在的页面，可以让导航栏显示比较有个性的文字，比如：将404 title改成：此页面好像不在这儿，你可以返回首页。等等。</p>
<p>这个对于那些经常出现404页面的网站相信一定会大有帮助的。所有的设置完成后，记得点击保存，所有的设置就会生效了。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>网站建设系统WordPress的发展历史</title>
		<link>https://www.3code.cn/wphistory/</link>
		
		<dc:creator><![CDATA[寒林]]></dc:creator>
		<pubDate>Sun, 07 Oct 2012 02:32:16 +0000</pubDate>
				<category><![CDATA[wordpress新闻]]></category>
		<category><![CDATA[WORDPRESS主题技术]]></category>
		<category><![CDATA[网站建设]]></category>
		<guid isPermaLink="false">https://www.3code.cn/?p=3064</guid>

					<description><![CDATA[WordPress每个新版本都有个名称,该名称由WordPress创始人Matt Muenweg授予<a class="moretag" href="https://www.3code.cn/wphistory/"> 阅读更多&#8230;</a>]]></description>
										<content:encoded><![CDATA[<p>WordPress每个新版本都有个名称,该名称由WordPress创始人Matt Muenweg授予.版本名称都与爵士乐有关,通常是某个传奇萨克斯手的名称,或者Matt自己擅长的某个乐器.WordPress于2010年6月推出WordPress 3.0版本并命名为Thelonious,取自美国爵士乐钢琴手、作曲人Thelonious Monk.</p>
<p><strong>现状</strong></p>
<p>WordPress是一个基于PHP的开源平台.全球前一百万最大网站中有12%是由WordPress驱动的.据统计,WordPress为互联网上超过8.5%的网站提供动力.<br />
WordPress最新正式版本为3.0,截止2010年10月4日,WordPress	3.0版的下载次数达到15799363次,平均每秒下载超过两次.</p>
<p><strong>发展时间轴</strong></p>
<p>2003年5月27日Matt Mullenweg、Ryan Boren以及Donncha O Caoimh共同开发出WordPress的最早版本mmWordPress	0.7.<br />
2004年5月22日支持插件功能的WordPress	1.2 (Mingus)发布.<br />
2005年2月17日WodPress 1.5 (Strayhorn)发布,支持静态页面,新增主题系统.<br />
2005年12月31日WordPress	2.0 (Duke)版本发布,添加富文本编辑、图片上传等功能,并改善了插件开发功能.<br />
2007年1月22日WordPress	2.1 (Ella)版推出了新用户界面,并增加了拼写检查、自动保存功能以及各种安全措施.<br />
2007年5月16日WordPress	2.2 (Getz)优化了WordPress的加载速度.<br />
2007年9月24日WordPress	2.3 (Dexter)开始支持标签功能以及安全修复.<br />
2008年3月29日WordPress	2.5 (Brecker)重新设计了用户界面.<br />
2008年7月15日WordPress	2.6 (Tyner)新增日志修改追踪功能,改进日志发布工具.<br />
2008年12月11日WordPress	2.7 (Coltrane)推出新的管理界面.<br />
2009年6月10日WordPress	2.8 (Baker)改善了WordPress的速度并发布CodePress编辑器.<br />
2009年12月19日WordPress	2.9 (Carmen)引进了整体撤销功能以及内置图片编辑器.<br />
2010年6月17日WordPress	3.0 (Thelonious)推出新的主题API.对WordPress与WordPress	MU的整合则提供了多站点的选择.</p>
<p><strong>插件</strong></p>
<p>截止2010年10月日,WordPress可用插件共计11496个.Hello Dolly是首个可用的WordPress插件.</p>
<p><strong>最受欢迎的插件</strong><br />
All in One SEO Pack mm 下载次数5928058次<br />
Google XML Sitemaps mm 下载次数4325698次<br />
Akismet mm 下载次数3448529次<br />
Contact Form 7 mm下载次数2381325次<br />
NextGen Gallery mm 2165195次<br />
WordPress.om Stats mm 下载次数1864693次<br />
WP Super Cache mm 下载次数1437392次<br />
WP Touch iPhone Theme mm 下载次数1053052次<br />
Google Analyticator mm 下载次数1006020次</p>
<p><strong>主题</strong><br />
WordPress官网的主题库中存有超过1240款主题,站长们提供的、未进入主题库的主题则有数千款,总下载次数超过2140万.此外,WordPress还有800多款付费主题.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>WordPress用户角色权限管理插件15款</title>
		<link>https://www.3code.cn/wordpress%e7%94%a8%e6%88%b7%e8%a7%92%e8%89%b2%e6%9d%83%e9%99%90%e7%ae%a1%e7%90%86%e6%8f%92%e4%bb%b615%e6%ac%be/</link>
		
		<dc:creator><![CDATA[寒林]]></dc:creator>
		<pubDate>Wed, 16 May 2012 03:22:51 +0000</pubDate>
				<category><![CDATA[wordpress插件]]></category>
		<category><![CDATA[WORDPRESS主题技术]]></category>
		<guid isPermaLink="false">https://www.3code.cn/?p=3046</guid>

					<description><![CDATA[wordpress 开放注册后的权限分配管理也是很重要的。下面，就请看看这15款WordPress角<a class="moretag" href="https://www.3code.cn/wordpress%e7%94%a8%e6%88%b7%e8%a7%92%e8%89%b2%e6%9d%83%e9%99%90%e7%ae%a1%e7%90%86%e6%8f%92%e4%bb%b615%e6%ac%be/"> 阅读更多&#8230;</a>]]></description>
										<content:encoded><![CDATA[<p>wordpress 开放注册后的权限分配管理也是很重要的。下面，就请看看这15款WordPress角色权限管理插件。</p>
<p>Role Manager WordPress Plugin<br />
这应该是目前最强大的一款WordPress角色管理插件，使用它，你可以:<br />
* 修改现有角色等级的名称。你可能并不需要”订阅者、编辑者、供稿者”这样的角色名称，而想用”探花，举人，状员”之类的。<br />
* 你还可以新建多个角色等级，并为每个等级的角色分配不同的权限，你甚至可以为同等级中的某一用户分配不同的权限。<br />
* 自定义角色等级的权限。<br />
总之，这是一款用户管理的首选插件。</p>
<p>Capability Manager<br />
这个WordPress插件可以让你拥有更强大的角色权限管理功能，它可以添加新的角色权限，并为每种角色设置可操作哪些东西。</p>
<p>RegLevel<br />
默认的WordPress只允许设置一种默认的注册角色权限，比如设置了新注册用户的权限为订阅者，那所有人注册都是订阅者。这个插件可以让你的注册机制更灵活些，让用户注册的时候可以直接选择注册哪个级别？但这也有问题: 用户可能会都愿意喜欢最高权限的级别，而不管实际上他是想当个订阅者还是编辑者。</p>
<p>Allow Categories<br />
Allow Categories是一个WordPress插件，可以让你分配哪些权限的用户只能访问哪些分类下的文章.</p>
<p>Show User Level Content<br />
这个插件也是根据用户级别来决定是否显示内容。</p>
<p>Change Uploaded File Permissions<br />
这个WordPress插件，可以在你上传图片或文件后，对这些文件进行访问权限设置。</p>
<p>AccessQontrol<br />
这个wordpress插件可以让你实现博客的私密化，通过它，你可以让你的博客:<br />
* 只允许注册用户访问<br />
* 除了你自己，任何人不能访问<br />
* 通过指定IP和IP段来禁止访问<br />
* 创建一个允许访问的白名单列表<br />
* 一个友好的禁止访问模板</p>
<p>Role Scoper<br />
这个WordPress插件可以为读者和编辑实现CMS风格的权限管理， 它凌驾于WordPress的角色之上，可实现指定的内容限制，可选的用户分组等等。</p>
<p>User Access Manager<br />
使用 “User Access Manager”插件，你可以管理用户查看你的文章，页面和文件的权限等。</p>
<p>WP-Invites<br />
可实现邀请系统的WordPress插件, 同时支持wordpress MU 和buddypress!</p>
<p>Member Access<br />
Member Access 是一个WordPress插件，可实现指定的文章或页面内容，必须登录才能查看.</p>
<p>Log User Access<br />
记录每一次WordPress 登录行为的用户名和具体时间。</p>
<p>Restrict Login By IP<br />
可以让你指定IP地址和主机来确定哪些用户允许登录。</p>
<p>Members Only<br />
这个WordPress插件也是可以让你的博客内容只对注册用户可读。</p>
<p>Social Access Control<br />
同上，控制访问内容的权限。</p>
<p>Private Files For Social Privacy<br />
加强私密日志的安全，防止一些狡猾的用户获取未经你授权的私密文章中的图片和附件。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>get_categories</title>
		<link>https://www.3code.cn/get_categories/</link>
		
		<dc:creator><![CDATA[寒林]]></dc:creator>
		<pubDate>Mon, 28 Nov 2011 09:34:43 +0000</pubDate>
				<category><![CDATA[WORDPRESS教程]]></category>
		<category><![CDATA[WORDPRESS主题技术]]></category>
		<category><![CDATA[wordpress教程]]></category>
		<guid isPermaLink="false">https://www.3code.cn/?p=2917</guid>

					<description><![CDATA[get_categories]]></description>
										<content:encoded><![CDATA[<h2>Description</h2>
<p>Returns an array of category objects matching the query parameters.</p>
<p>Arguments are pretty much the same as <a title="Template Tags/wp list categories" href="http://codex.wordpress.org/Template_Tags/wp_list_categories">wp_list_categories</a> and can be passed as either array or in query syntax.</p>
<p><a id="Usage" name="Usage"></a></p>
<h2>Usage</h2>
<p><code> &lt;?php $categories = get_categories( $args ); ?&gt; </code></p>
<p><a id="Default_Usage" name="Default_Usage"></a></p>
<h3>Default Usage</h3>
<p><code> &lt;?php $args = array(<br />
'type'                     =&gt; 'post',<br />
'child_of'                 =&gt; 0,<br />
'parent'                   =&gt; <em>,<br />
'orderby'                  =&gt; 'name',<br />
'order'                    =&gt; 'ASC',<br />
'hide_empty'               =&gt; 1,<br />
'hierarchical'             =&gt; 1,<br />
'exclude'                  =&gt; </em>,<br />
'include'                  =&gt; <em>,<br />
'number'                   =&gt; </em>,<br />
'taxonomy'                 =&gt; 'category',<br />
'pad_counts'               =&gt; false );?&gt; </code></p>
<p><a id="Parameters" name="Parameters"></a></p>
<h2>Parameters</h2>
<dl>
<dt> <strong>type</strong> </dt>
<dd> (<em>string</em>) Type of category to retrieve</p>
<ul>
<li> <tt>post</tt> &#8211; default</li>
<li> <tt>link</tt></li>
</ul>
</dd>
</dl>
<p><em>Note:</em> <strong><tt>type=link</tt></strong> has been deprecated from WordPress 3.0 onwards. Use <strong><tt>taxonomy=link_category</tt></strong> instead.</p>
<dl>
<dt> <strong>child_of</strong> </dt>
<dd> (<em>integer</em>) Display all  categories that are descendants (i.e. children &amp; grandchildren) of  the category identified by its ID. There is no default for this  parameter. If the parameter is used, the <strong>hide_empty</strong> parameter is set to <em>false</em>. </dd>
</dl>
<dl>
<dt> <strong>parent</strong> </dt>
<dd> (<em>integer</em>) Display only  categories that are direct descendants (i.e. children only) of the  category identified by its ID. This does NOT work like the &#8216;child_of&#8217;  parameter. There is no default for this parameter. [In 2.8.4] </dd>
</dl>
<dl>
<dt> <strong>orderby</strong> </dt>
<dd> (<em>string</em>) Sort categories alphabetically or by unique category ID. The default is <em>sort by Category ID</em>. Valid values:</p>
<ul>
<li> <tt>id</tt></li>
<li> <tt>name</tt> &#8211; default</li>
<li> <tt>slug</tt></li>
<li> <tt>count</tt></li>
<li> <tt>term_group</tt></li>
</ul>
</dd>
</dl>
<dl>
<dt> <strong>order</strong> </dt>
<dd> (<em>string</em>) Sort order for categories (either ascending or descending). The default is <em>ascending</em>. Valid values:</p>
<ul>
<li> <tt>asc</tt> &#8211; default</li>
<li> <tt>desc</tt></li>
</ul>
</dd>
</dl>
<dl>
<dt> <strong>hide_empty</strong> </dt>
<dd> (<em>boolean</em>) Toggles the display of categories with no posts. The default is <em>1</em> for true or you can add &#8216;0&#8217; for false (show empty categories). Valid values:</p>
<ul>
<li> <tt>1</tt> &#8211; default</li>
<li> <tt>0</tt></li>
</ul>
</dd>
</dl>
<dl>
<dt> <strong>hierarchical</strong> </dt>
<dd> (<em>boolean</em>) When <em>true</em>,  the results will include sub-categories that are empty, as long as  those sub-categories have sub-categories that are not empty.  The  default is <em>true</em>. Valid values:</p>
<ul>
<li> <tt>1 (true)</tt> &#8211; default</li>
<li> <tt>0 (false)</tt></li>
</ul>
</dd>
</dl>
<dl>
<dt> <strong>exclude</strong> </dt>
<dd> (<em>string</em>) Excludes one or more categories from the list generated by <em>wp_list_categories</em>. This parameter takes a comma-separated list of categories by unique ID, in ascending order. See <a title="Template Tags/wp list categories" href="http://codex.wordpress.org/Template_Tags/wp_list_categories#Include_or_Exclude_Categories">the example</a>. </dd>
</dl>
<dl>
<dt> <strong>include</strong> </dt>
<dd> (<em>string</em>) Only include certain categories in the list generated by <em>wp_list_categories</em>. This parameter takes a comma-separated list of categories by unique ID, in ascending order. See <a title="Template Tags/wp list categories" href="http://codex.wordpress.org/Template_Tags/wp_list_categories#Include_or_Exclude_Categories">the example</a>.</p>
<ul>
<li> <tt>list</tt> &#8211; default.</li>
<li> <tt>none</tt></li>
</ul>
</dd>
</dl>
<dl>
<dt> <strong>number</strong> </dt>
<dd> (<em>string</em>) The number of categories to return </dd>
</dl>
<dl>
<dt> <strong>taxonomy</strong> </dt>
<dd> (<em>string</em>) Taxonomy to return.  This parameter added at <a title="Version 3.0" href="http://codex.wordpress.org/Version_3.0">Version 3.0</a> Valid values:</p>
<ul>
<li> <tt>category</tt> &#8211; default</li>
<li> <tt>taxonomy</tt> &#8211; or any registered taxonomy</li>
</ul>
</dd>
</dl>
<dl>
<dt> <strong>pad_counts</strong> </dt>
<dd> (<em>boolean</em>) Calculates link or post counts by including items from child categories.  Valid values:</p>
<ul>
<li> <tt>1 (true)</tt></li>
<li> <tt>0 (false)</tt> &#8211; default</li>
</ul>
</dd>
</dl>
<p><a id="Examples" name="Examples"></a></p>
<h2>Examples</h2>
<p><a id="Dropdown_Box_as_used_in_Parent_category_at_post_category_page" name="Dropdown_Box_as_used_in_Parent_category_at_post_category_page"></a></p>
<h3>Dropdown Box as used in Parent category at post category page</h3>
<p>This is the code used in the build in category page. Code from 3.0.1</p>
<pre>wp_dropdown_categories(array('hide_empty' =&gt; 0, 'name' =&gt; 'category_parent', 'orderby' =&gt; 'name', 'selected' =&gt; $category-&gt;parent, 'hierarchical' =&gt; true, 'show_option_none' =&gt; __('None')));</pre>
<p>This slightly altered code will grab all categories and display them  with indent for a new level (child category). The select box will have a  name= and id= called &#8216;select_name&#8217;. This select will not display a default &#8220;none&#8221; as the original code was  used to attach a category as a child to another category (or none).</p>
<pre>wp_dropdown_categories(array('hide_empty' =&gt; 0, 'name' =&gt; 'select_name', 'hierarchical' =&gt; true));</pre>
<p><a id="Dropdown_Box" name="Dropdown_Box"></a></p>
<h3>Dropdown Box</h3>
<p>Here&#8217;s how to create a dropdown box of the subcategories of, say, a  category that archives information on past events. This mirrors the  example of the dropdown example of <a title="Template Tags/wp get archives" href="http://codex.wordpress.org/Template_Tags/wp_get_archives"> wp_get_archives</a> which shows how to create a dropdown box for monthly archives.</p>
<p>Suppose the category whose subcategories you want to show is category 10, and that its category &#8220;nicename&#8221; is &#8220;archives&#8221;.</p>
<pre>&lt;select name="event-dropdown" onchange='document.location.href=this.options[this.selectedIndex].value;'&gt; 
 &lt;option value=""&gt;&lt;?php echo esc_attr(__('Select Event')); ?&gt;&lt;/option&gt; 
 &lt;?php 
  $categories=  get_categories('child_of=10'); 
  foreach ($categories as $category) {
  	$option = '&lt;option value="/category/archives/'.$category-&gt;category_nicename.'"&gt;';
	$option .= $category-&gt;cat_name;
	$option .= ' ('.$category-&gt;category_count.')';
	$option .= '&lt;/option&gt;';
	echo $option;
  }
 ?&gt;
&lt;/select&gt;</pre>
<p><a id="List_Categories_and_Descriptions" name="List_Categories_and_Descriptions"></a></p>
<h3>List Categories and Descriptions</h3>
<p>This example will list in alphabetic order, all categories presented  as links to the corresponding category archive.  Each category  descripition is listed after the category link.</p>
<pre>&lt;?php
$args=array(
  'orderby' =&gt; 'name',
  'order' =&gt; 'ASC'
  );
$categories=get_categories($args);
  foreach($categories as $category) { 
    echo '&lt;p&gt;Category: &lt;a href="' . get_category_link( $category-&gt;term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category-&gt;name ) . '" ' . '&gt;' . $category-&gt;name.'&lt;/a&gt; &lt;/p&gt; ';
    echo '&lt;p&gt; Description:'. $category-&gt;description . '&lt;/p&gt;';
    echo '&lt;p&gt; Post Count: '. $category-&gt;count . '&lt;/p&gt;';  } 
?&gt;</pre>
<p>The complete content of $category is:</p>
<pre>$category-&gt;term_id
$category-&gt;name
$category-&gt;slug
$category-&gt;term_group
$category-&gt;term_taxonomy_id
$category-&gt;taxonomy
$category-&gt;description
$category-&gt;parent
$category-&gt;count
$category-&gt;cat_ID
$category-&gt;category_count
$category-&gt;category_description
$category-&gt;cat_name
$category-&gt;category_nicename
$category-&gt;category_parent</pre>
<p><a id="Source_File" name="Source_File"></a></p>
<h2>Source File</h2>
<p><tt>get_categories()</tt> is located in <code><a title="http://core.trac.wordpress.org/browser/tags/3.2.1/wp-includes/category.php" href="http://core.trac.wordpress.org/browser/tags/3.2.1/wp-includes/category.php">wp-includes/category.php</a></code>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>wordpress动态JQUERY二级下拉菜单</title>
		<link>https://www.3code.cn/wordpress%e5%8a%a8%e6%80%81jquery%e4%ba%8c%e7%ba%a7%e4%b8%8b%e6%8b%89%e8%8f%9c%e5%8d%95/</link>
		
		<dc:creator><![CDATA[寒林]]></dc:creator>
		<pubDate>Tue, 20 Sep 2011 04:42:41 +0000</pubDate>
				<category><![CDATA[WORDPRESS教程]]></category>
		<category><![CDATA[WORDPRESS主题技术]]></category>
		<category><![CDATA[wordpress教程]]></category>
		<guid isPermaLink="false">https://www.3code.cn/?p=2855</guid>

					<description><![CDATA[使用Jquery后二级菜单在ie6、ie7、ie8、firefox下均能动态显示，但是前天发现在Chrome下虽然可以显示二级菜单，但是却没有动态效果，当时并不在意，今天发现在ie9下也没有动态效果，分析了一下应该是由于添加jQuery后没有删掉css原来的hover部分，浏览器对css和jquery同时执行后影响了显示效果吧，今天把css中的这部分删除了]]></description>
										<content:encoded><![CDATA[<p>原来css显示二级菜单部分：<br />
#access ul li:hover &gt; ul {display: block;}</p>
<p>偶的博客因为已经添加了jQuery库，所以很容易实现动态下拉菜单效果，添加代码：<br />
jQuery(document).ready(function($) {<br />
$(&#8216;#access ul li&#8217;).hover(function() {<br />
$(&#8216;ul&#8217;, this).slideDown(300)<br />
},<br />
function() {<br />
$(&#8216;ul&#8217;, this).slideUp(300)<br />
})<br />
});</p>
<p>使用Jquery后二级菜单在ie6、ie7、ie8、firefox下均能动态显示，但是前天发现在Chrome下虽然可以显示二级菜单，但是却没有动态效果，当时并不在意，今天发现在ie9下也没有动态效果，分析了一下应该是由于添加jQuery后没有删掉css原来的hover部分，浏览器对css和jquery同时执行后影响了显示效果吧，今天把css中的这部分删除了，现在测试均可以了。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>wordpress英文版下载地址</title>
		<link>https://www.3code.cn/wordpress%e8%8b%b1%e6%96%87%e7%89%88%e4%b8%8b%e8%bd%bd%e5%9c%b0%e5%9d%80/</link>
		
		<dc:creator><![CDATA[寒林]]></dc:creator>
		<pubDate>Sat, 17 Sep 2011 15:58:03 +0000</pubDate>
				<category><![CDATA[wordpress安装与下载]]></category>
		<category><![CDATA[wordpress下载]]></category>
		<category><![CDATA[WORDPRESS主题技术]]></category>
		<guid isPermaLink="false">https://www.3code.cn/?p=2834</guid>

					<description><![CDATA[Wordpress最新版下载地址(英文)：http://wordpress.org/download/
Wordpress历史版本下载地址(英文)：http://wordpress.org/download/release-archive/]]></description>
										<content:encoded><![CDATA[<p><strong>WordPress最新版下载地址(英文)：</strong></p>
<p><a href="http://wordpress.org/download/" target="_blank">http://wordpress.org/download/</a></p>
<p><strong>WordPress历史版本下载地址(英文)：</strong><br />
<a href="http://wordpress.org/download/release-archive/" target="_blank">http://wordpress.org/download/release-archive/</a></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>全球前百万名网站15%选择了WordPress</title>
		<link>https://www.3code.cn/%e5%85%a8%e7%90%83%e5%89%8d%e7%99%be%e4%b8%87%e5%90%8d%e7%bd%91%e7%ab%9915%e9%80%89%e6%8b%a9%e4%ba%86wordpress/</link>
		
		<dc:creator><![CDATA[寒林]]></dc:creator>
		<pubDate>Sat, 17 Sep 2011 14:47:36 +0000</pubDate>
				<category><![CDATA[WORDPRESS教程]]></category>
		<category><![CDATA[wordpress新闻]]></category>
		<category><![CDATA[WORDPRESS主题技术]]></category>
		<guid isPermaLink="false">https://www.3code.cn/?p=2825</guid>

					<description><![CDATA[尽管Facebook与Twitter等社交网站聚集了所有网民的眼球，号称轻型博客而崛起的Tumblr，使用者似乎也有后来居上的趋势（6月15日，美国科技博客Mashable称4岁的轻博客Tumblr 超越了8岁的博客搭载平台WordPress，截至那一天Tumblr上总计共有2087.3182万注册博客，比WordPress多出8.5万个），但以开源架构雄霸部落格领域一方的WordPress，日前也不甘示弱的宣布，全球排名前百万的网站中，有14.7%是使用WordPress架构，相较去年同期增加了6.2%。]]></description>
										<content:encoded><![CDATA[<p>尽管Facebook与Twitter等社交网站聚集了所有网民的眼球，号称轻型博客而崛起的Tumblr，使用者似乎也有后来居上的趋势（6月15日，美国科技博客Mashable称4岁的轻博客Tumblr 超越了8岁的博客搭载平台WordPress，截至那一天Tumblr上总计共有2087.3182万注册博客，比WordPress多出8.5万个），但以开源架构雄霸部落格领域一方的WordPress，日前也不甘示弱的宣布，全球排名前百万的网站中，有14.7%是使用WordPress架构，相较去年同期增加了6.2%。</p>
<p>在美国，每100个新启用的网站中，就有22个是由WordPress所驱动，包括从WordPress.com（现成模组）和WordPress.org（自行架站）而来。而在超过18000份调查问卷中发现，6800位的受访者，合计架设了超过170000个网站，且这些可不是免费的工作─平均每小时收取50美元的费用，也就是说，假设架一个博客花费3个小时，等于创造了一项年营收2950万美元的产业。</p>
<p>以一个开源（free）的工具社群来说，这的确是相当了不起的成就，成立8年，仍旧是老而弥坚，在变换快速的网路世界，WordPress的存在确实格外耀眼。</p>
<p>现在是你加入WordPress最好的时期了，因为仍然有未使用WordPress的85.3%的网站需要得到帮助。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>WordPress插件开发基本代码结构注释</title>
		<link>https://www.3code.cn/wordpress%e6%8f%92%e4%bb%b6%e5%bc%80%e5%8f%91%e5%9f%ba%e6%9c%ac%e4%bb%a3%e7%a0%81%e7%bb%93%e6%9e%84%e6%b3%a8%e9%87%8a/</link>
		
		<dc:creator><![CDATA[寒林]]></dc:creator>
		<pubDate>Tue, 02 Aug 2011 05:54:04 +0000</pubDate>
				<category><![CDATA[WORDPRESS主题技术]]></category>
		<category><![CDATA[WORDPRESS教程]]></category>
		<category><![CDATA[wordpress 插件]]></category>
		<guid isPermaLink="false">https://www.3code.cn/?p=2767</guid>

					<description><![CDATA[WordPress插件开发参考]]></description>
										<content:encoded><![CDATA[<p>以下代码根据插件精简所得，通过代码行间的简单注释，可以作为开发WordPress插件的一个查考。类中所有方法的名称不受WordPress约束，均为自行所命之名。</p>
<blockquote>
<pre>
<pre><code>/*
Plugin Name: ShuiFou
Plugin URI: http://www.chibl.com/shuifou
Description: 睡否?
Version: 0.3
Author: Miracle
Author URI: http://www.chibl.com
License: GPLv2
*/

if(!class_exists('ShuiFou')) :
    class ShuiFou {
        var $id;
        var $name;
        var $version;
        var $options;

        //构造方法，可在此初始化插件常量
        function ShuiFou() {
            $this-&gt;id = 'com.chibl.shuifou';
            $this-&gt;name = 'ShuiFou';
            $this-&gt;version = '0.3';
        }

        //插件的入口方法，类实例化后将调用此方法
        function init() {
            $this-&gt;options = get_option($this-&gt;id);

            //如果当前访问的是后台管理页面
            if(is_admin()) {
                //在WordPress后台添加插件管理菜单
                add_action('admin_menu', array(&amp;$this,'menu'));
            } else {
                //根据需要设置钩子
                add_action('init', array(&amp;$this, 'action'));
                add_action('wp_head', array(&amp;$this, 'display'));
            }

            //添加小工具
            add_action('widgets_init', array(&amp;$this, 'widget'));
        }

        //在后台管理 设置 栏添加名为 ShuiFou 的菜单，链向插件配置页
        function menu() {
            add_options_page($this-&gt;id, $this-&gt;name, 'manage_options', __FILE__, array(&amp;$this, 'config'));
        }

        //插件配置页内容
        function config() {
        }

        //爱干嘛干嘛
        function action() {
        }

        //访问指定ID的页面时，修改页面内容
        function display() {
            if(is_page($this-&gt;options['pageid'])) {
                add_filter('the_content', array(&amp;$this,'page'));
            }
        }

        function page($content) {
            $content .= '追加内容……';
            return $content;
        }

        //注册小工具
        function widget() {
            include_once 'widget.php';
            register_widget('ShuiFouWidget');
        }

        //安装插件时将执行此方法，可在此创建或更新插件所需持久化的数据
        function install() {
        }

        //删除插件时将执行此方法，可在此删除安装插件时所创建的数据表及数据
        function uninstall() {
        }

    }
endif;

if(class_exists('ShuiFou')) {
    $sf = new ShuiFou(); //实例化
    register_activation_hook(__FILE__, array(&amp;$sf, 'install')); //指定安装插件时所要执行的方法
    register_deactivation_hook(__FILE__, array(&amp;$sf, 'uninstall')); //指定删除插件时所要执行的方法
    $sf-&gt;init();
}</code></pre>
</blockquote>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>WordPress限制搜索只搜特定分类中的文章</title>
		<link>https://www.3code.cn/wordpress%e9%99%90%e5%88%b6%e6%90%9c%e7%b4%a2%e5%8f%aa%e6%90%9c%e7%89%b9%e5%ae%9a%e5%88%86%e7%b1%bb%e4%b8%ad%e7%9a%84%e6%96%87%e7%ab%a0/</link>
		
		<dc:creator><![CDATA[寒林]]></dc:creator>
		<pubDate>Sat, 30 Jul 2011 07:34:37 +0000</pubDate>
				<category><![CDATA[WORDPRESS教程]]></category>
		<category><![CDATA[WORDPRESS主题技术]]></category>
		<category><![CDATA[wordpress教程]]></category>
		<guid isPermaLink="false">https://www.3code.cn/?p=2764</guid>

					<description><![CDATA[WordPress限制搜索只搜特定分类中的文章]]></description>
										<content:encoded><![CDATA[<p>出于某些原因，如果你需要把某些分类排除在搜索之外时，你就需要对WordPress做一些小改动了。</p>
<p>把以下代码放入search.php模板文件中，把第三行的IDs换成你需要的分类ID：</p>
<p>&lt;?php if( is_search() )  :<br />
$paged = (get_query_var(&#8216;paged&#8217;)) ? get_query_var(&#8216;paged&#8217;) : 1;<br />
query_posts(&#8220;s=$s&amp;paged=$paged&amp;cat=1,2,3&#8221;);<br />
endif; ?&gt;</p>
<p>大功告成！</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>非插件实现WordPress 的投稿功能</title>
		<link>https://www.3code.cn/%e9%9d%9e%e6%8f%92%e4%bb%b6%e5%ae%9e%e7%8e%b0wordpress-%e7%9a%84%e6%8a%95%e7%a8%bf%e5%8a%9f%e8%83%bd/</link>
		
		<dc:creator><![CDATA[寒林]]></dc:creator>
		<pubDate>Fri, 15 Jul 2011 15:21:02 +0000</pubDate>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[WORDPRESS教程]]></category>
		<category><![CDATA[WORDPRESS主题技术]]></category>
		<category><![CDATA[wordpress投稿]]></category>
		<category><![CDATA[wordpress教程]]></category>
		<guid isPermaLink="false">https://www.3code.cn/?p=2742</guid>

					<description><![CDATA[我们都知道 WordPress 官方有一些关于投稿功能的插件，我了解过其中一些，很遗憾的是，大多都是英文的，对于国内用户并不是很便于管理，另一方面，插件毕竟有其局限性，不能个性化地针对主题进行定制。所以我还是选择了用非插件的方法，根据博客联盟的实际需求写了一个。方法如下：]]></description>
										<content:encoded><![CDATA[<p>我们都知道 <strong>WordPress</strong> 官方有一些关于投稿功能的插件，我了解过其中一些，很遗憾的是，大多都是英文的，对于国内用户并不是很便于管理，另一方面，插件毕竟有其局限性，不能个性化地针对主题进行定制。所以我还是选择了用非插件的方法，根据博客联盟的实际需求写了一个。方法如下：</p>
<p><strong>一、新建投稿页面模板</strong></p>
<p>和 <strong>WordPress</strong> 常规的新建页面模板一样，把主题的 page.php 另存为 tougao.php，并且在第一行的 &lt;?php 之后添加模板的标识注释：</p>
<div>/*<br />
Template Name: 投稿模板<br />
*/</div>
<p><strong>二、添加表单，在 the_content(); 函数下添加如下代码：</strong></p>
<div>&lt;form id=&#8221;tougaoform&#8221; method=&#8221;post&#8221; action=&#8221;&lt;?php echo $_SERVER[&#8220;REQUEST_URI&#8221;]; ?&gt;&#8221;&gt;<br />
        &lt;p&gt;&lt;input id=&#8221;author&#8221; type=&#8221;text&#8221; size=&#8221;40&#8243; value=&#8221;&#8221; name=&#8221;tougao_authorname&#8221; /&gt;&lt;label&gt;昵称（*必填）&lt;/label&gt;&lt;/p&gt;<br />
        &lt;p&gt;&lt;input id=&#8221;email&#8221; type=&#8221;text&#8221; size=&#8221;40&#8243; value=&#8221;&#8221; name=&#8221;tougao_authoremail&#8221; /&gt;&lt;label&gt;邮箱（*必填）&lt;/label&gt;&lt;/p&gt;<br />
        &lt;p&gt;&lt;input id=&#8221;url&#8221; type=&#8221;text&#8221; size=&#8221;40&#8243; value=&#8221;&#8221; name=&#8221;tougao_authorblog&#8221; /&gt;&lt;label&gt;您的博客/文章来源&lt;/label&gt;&lt;/p&gt;<br />
        &lt;p&gt;&lt;input id=&#8221;tougao_title&#8221; type=&#8221;text&#8221; size=&#8221;40&#8243; value=&#8221;&#8221; name=&#8221;tougao_title&#8221; /&gt;&lt;label&gt;文章标题（*必填）&lt;/label&gt;&lt;/p&gt;<br />
        &lt;p&gt;&lt;input id=&#8221;tags&#8221; type=&#8221;text&#8221; size=&#8221;40&#8243; value=&#8221;&#8221; name=&#8221;tougao_tags&#8221; /&gt;&lt;label&gt;文章标签（多个标签请用英文逗号 , 分开）&lt;/label&gt;&lt;/p&gt;<br />
        &lt;p&gt;&lt;?php wp_dropdown_categories(&#8216;show_option_none=请选择文章分类&amp;show_count=1&amp;hierarchical=1&amp;hide_empty=0&#8217;); ?&gt;&lt;label&gt;文章分类（*必填）&lt;/label&gt;&lt;/p&gt;<br />
        &lt;textarea rows=&#8221;15&#8243; cols=&#8221;55&#8243; id=&#8221;tougao&#8221; name=&#8221;tougao_content&#8221;&gt;&lt;/textarea&gt;<br />
        &lt;p&gt;<br />
        &lt;input type=&#8221;hidden&#8221; value=&#8221;send&#8221; name=&#8221;tougao_form&#8221; /&gt;<br />
        &lt;input id=&#8221;submit&#8221; type=&#8221;submit&#8221; value=&#8221;提交&#8221; /&gt;<br />
        &lt;input id=&#8221;reset&#8221; type=&#8221;reset&#8221; value=&#8221;重填&#8221; /&gt;<br />
        &lt;/p&gt;<br />
&lt;/form&gt;</div>
<p><strong>三、在此新建的投稿页面中添加如下函数：</strong></p>
<div>if( isset($_POST[&#8216;tougao_form&#8217;]) &amp;&amp; $_POST[&#8216;tougao_form&#8217;] == &#8216;send&#8217;){<br />
    if ( isset($_COOKIE[&#8220;tougao&#8221;]) &amp;&amp; ( time() &#8211; $_COOKIE[&#8220;tougao&#8221;] ) &lt; 120 ){<br />
        wp_die(&#8216;您投稿也太勤快了吧，先歇会儿！&#8217;);<br />
    }<br />
    //表单变量初始化<br />
    $name = isset( $_POST[&#8216;tougao_authorname&#8217;] ) ? $_POST[&#8216;tougao_authorname&#8217;] : &#8221;;<br />
    $email = isset( $_POST[&#8216;tougao_authoremail&#8217;] ) ? $_POST[&#8216;tougao_authoremail&#8217;] : &#8221;;<br />
    $blog = isset( $_POST[&#8216;tougao_authorblog&#8217;] ) ? $_POST[&#8216;tougao_authorblog&#8217;] : &#8221;;<br />
    $title = isset( $_POST[&#8216;tougao_title&#8217;] ) ? $_POST[&#8216;tougao_title&#8217;] : &#8221;;<br />
    $tags = isset( $_POST[&#8216;tougao_tags&#8217;] ) ? $_POST[&#8216;tougao_tags&#8217;] : &#8221;;<br />
    $category = isset( $_POST[&#8216;cat&#8217;] ) ? (int)$_POST[&#8216;cat&#8217;] : 0;<br />
    $content = isset( $_POST[&#8216;tougao_content&#8217;] ) ? $_POST[&#8216;tougao_content&#8217;] : &#8221;;<br />
    //表单项数据验证<br />
    if ( empty($name) || strlen($name) &gt; 20 ){<br />
        wp_die(&#8216;昵称必须填写，且不得超过20个长度&#8217;);<br />
    }<br />
    if ( empty($email) || strlen($email) &gt; 60 || !preg_match(&#8220;/^([a-z0-9\+_\-]+)(\.[a-z0-9\+_\-]+)*@([a-z0-9\-]+\.)+[a-z]{2,6}$/ix&#8221;, $email)){<br />
        wp_die(&#8216;邮箱必须填写，且不得超过60个长度，必须符合 Email 格式&#8217;);<br />
    }<br />
    if ( empty($title) || strlen($title) &gt; 100 ){<br />
        wp_die(&#8216;文章标题必须填写，且不得超过100个长度&#8217;);<br />
    }<br />
    if ( empty($content) || strlen($content) &lt; 100){<br />
        wp_die(&#8216;内容必须填写，且不得少于100个长度&#8217;);<br />
    }<br />
    $tougao = array(<br />
        &#8216;post_title&#8217; =&gt; $title,                //标题<br />
        &#8216;post_content&#8217; =&gt; $content,            //内容<br />
        &#8216;post_status&#8217; =&gt; &#8216;pending&#8217;,            //待审<br />
        &#8216;tags_input&#8217; =&gt; $tags,                //标签<br />
        &#8216;post_category&#8217; =&gt; array($category)    //分类<br />
    );<br />
    //将文章插入数据库<br />
    $status = wp_insert_post( $tougao );<br />
    if ($status != 0){<br />
    /*<br />
        //将自定义域写入最新待审文章<br />
        global $wpdb;<br />
        $myposts = $wpdb-&gt;get_results(&#8221;<br />
            SELECT ID<br />
            FROM $wpdb-&gt;posts<br />
            WHERE post_status = &#8216;pending&#8217;<br />
            AND post_type = &#8216;post&#8217;<br />
            ORDER BY post_date DESC<br />
        &#8220;);<br />
        add_post_meta($myposts[0]-&gt;ID, &#8216;cbs_postauthor&#8217;, $name);    //插入投稿人昵称的自定义域<br />
        if ( !empty($blog)) add_post_meta($myposts[0]-&gt;ID, &#8216;cbs_posturl&#8217;, $blog);    //插入投稿人网址的自定义域<br />
    */<br />
        setcookie(&#8220;tougao&#8221;, time(), time()+180);<br />
        wp_die(&#8216;投稿成功！&#8217;,&#8217;投稿成功！&#8217;);<br />
    } else {<br />
        wp_die(&#8216;投稿失败！&#8217;,&#8217;投稿失败！&#8217;);<br />
    }<br />
}</div>
<p>可以看到以上有一小段注释，是因为博客联盟有用到自定义域，为了兼容主题的相应函数，所以我特意加上了，如果你有同样的需要，去掉此注释就可以了。以上方法主要参考了露兜博客的《<strong>WordPress</strong> 添加投稿功能邮件通知》，我只是根据主题的特定需要稍作了修改，当然你也可以根据你的主题需要再作修改，这就是非插件的好处啦。提示一下，以上代码其实还可以作进一步的扩展，比如说在用户投稿成功之后，可以向管理员发出邮件通知，立马进行审核，这里就不多作说明了，有兴趣的朋友可以折腾一下。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>让WordPress支持中文用户名</title>
		<link>https://www.3code.cn/%e8%ae%a9wordpress%e6%94%af%e6%8c%81%e4%b8%ad%e6%96%87%e7%94%a8%e6%88%b7%e5%90%8d-2/</link>
		
		<dc:creator><![CDATA[寒林]]></dc:creator>
		<pubDate>Mon, 04 Jul 2011 08:55:21 +0000</pubDate>
				<category><![CDATA[WORDPRESS主题技术]]></category>
		<category><![CDATA[WORDPRESS教程]]></category>
		<category><![CDATA[wordpress教程]]></category>
		<guid isPermaLink="false">https://www.3code.cn/?p=2727</guid>

					<description><![CDATA[WordPress 注册用户的时候，不能注册中文用户名，用以下方法解决]]></description>
										<content:encoded><![CDATA[<p><a href="http://www.moldchina.org/" target="_blank">China Mould suppliers of Mould, plastic injection molding,China Mould exporter of Mould, injection molding company,</a><br />
<a href="http://www.moldchina.org/" target="_blank">china mould makers,china plastic injection molding, china injection molding company</a><br />
<a href="http://www.9cweb.com/" target="_blank">深圳外贸网站建设, 英文网站建设, wordpress企业主题, 深圳网页设计</a><br />
<a href="http://www.peony-flowers.com/" target="_blank">Peony, Peony picture, Black peony</a></p>
<p>WordPress 注册用户的时候，不能注册中文用户名，用以下方法解决：</p>
<p>打开 wp-includes/formatting.php，找到:</p>
<p>function sanitize_user( $username, $strict = false ) {</p>
<p>把 $strict 强制指定为 false，即在 sanitize_user 这行函数的下一行添加如下代码</p>
<p>$strict = false;</p>
<p>在 WordPress 2.8.3 / 2.8.4 上成功，其他版本应该没有问题</p>
<p>有人说“后台可以显示中文昵称”，以及“升级需要从新修改文件”等问题，没错，话是这么说的，除非 WordPress 能整合了这个功能，但毕竟解决了不能注册中文名的问题，在此仅作为一个技巧给大家分享。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>更快更轻的计划WordPress 3.2</title>
		<link>https://www.3code.cn/%e6%9b%b4%e5%bf%ab%e6%9b%b4%e8%bd%bb%e7%9a%84%e8%ae%a1%e5%88%92wordpress-3-2/</link>
		
		<dc:creator><![CDATA[寒林]]></dc:creator>
		<pubDate>Sun, 03 Jul 2011 14:49:35 +0000</pubDate>
				<category><![CDATA[WORDPRESS主题技术]]></category>
		<category><![CDATA[WORDPRESS教程]]></category>
		<category><![CDATA[wordpress3.2]]></category>
		<guid isPermaLink="false">https://www.3code.cn/?p=2721</guid>

					<description><![CDATA[距3.1版本发布刚刚一个月，WordPress官方开发团队就公布了WordPress3.2版本的开发计划。总的来说，WordPress 3.2将是一个更快的轻量级版本，会对WordPress中相对过时或无用的技术进行减肥。]]></description>
										<content:encoded><![CDATA[<p><a href="http://www.moldchina.org/" target="_blank">plastic injection molding, injection molding company</a><br />
<a href="http://www.moldchina.org/" target="_blank">china mould makers,china plastic injection molding, china injection molding company</a></p>
<p><a href="http://www.9cweb.com/" target="_blank">深圳外贸网站建设, wordpress企业主题, 深圳网页设计</a></p>
<p><a href="http://www.peony-flowers.com/" target="_blank">Peony, Peony picture, Yellow peony</a></p>
<p>距3.1版本发布刚刚一个月，WordPress官方开发团队就公布了WordPress3.2版本的开发计划。总的来说，WordPress 3.2将是一个更快的轻量级版本，会对WordPress中相对过时或无用的技术进行减肥。</p>
<p><strong>3.2开发计划的主要内容包括：</strong></p>
<p>▶ 缩短开发周期——由于针对性较强，本次版本开发周期将会短于上一版本。<br />
▶ 目标是更快更轻——丢弃对老旧技术的支持，从而使该版本成为一定时期内最轻便的版本。<br />
▶ PHP 5.2.4版本必需——不再支持PHP4，但不会添加很多针对PHP5的功能。本次版本的主题是“辞旧”，“迎新”任务会留给将来版本。<br />
▶ MySQL 5必需——不再支持MySQL 4。<br />
▶ 取消对IE6的支持——不再支持IE6。并且开发团队会考虑对IE6用户弹出“请使用真正的浏览器”信息。<br />
▶ 新的全屏编辑器——让现有的全屏编辑器更美观、更实用（行长与字体方面）、更简洁。<br />
▶ 升级更方便——仅升级需要修改的文件，对核心文件不做改动。<br />
▶ 全面提速——除了弃用落后技术造成的速度提升外，开发团队还将对WordPress进行全方位提速，包括但不限于对控制板、管理菜单以及FTP的改良。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>wordpress主题设计的10个准则</title>
		<link>https://www.3code.cn/wordpress%e4%b8%bb%e9%a2%98%e8%ae%be%e8%ae%a1%e7%9a%8410%e4%b8%aa%e5%87%86%e5%88%99/</link>
		
		<dc:creator><![CDATA[寒林]]></dc:creator>
		<pubDate>Mon, 20 Jun 2011 14:36:26 +0000</pubDate>
				<category><![CDATA[WORDPRESS主题技术]]></category>
		<category><![CDATA[WORDPRESS教程]]></category>
		<category><![CDATA[wordpress教程]]></category>
		<guid isPermaLink="false">https://www.3code.cn/?p=2718</guid>

					<description><![CDATA[对于一些主题，这个问题不是很重要，特别是如果你设计的主题只是在 wordpress 默认主题的基础上做出不大的修改。但如果你设计的主题比较复杂，而且你还想在以后对这个主题做出修改，那对你的代码进行注释就非常重要了，而且，这也方便别人对你的主题做出修正。]]></description>
										<content:encoded><![CDATA[<p>经过对 wordpress 主题的研究，本人觉得制作一个好的 wordpress 主题应该遵守下列准则：</p>
<p><strong>1 . 验证代码。</strong></p>
<p>这个工作是很容易地完成的，它可以检查出设计的 wordpress 主题有什么不严密或错误的地方，可以通过 http://validator.w3.org/ 检查你的 HTML ，再通过 http://jigsaw.w3.org/css-validator/ 检查你的 CSS ，看他们是否存在问题。针对 CSS ，可以参考 “CSS 教材：18 步改变你网站的 css ，使你从初学者成为高级用户” 来做出修改。</p>
<p><strong>2 . 设计的主题可以在现在流行的各种浏览器上都能正常使用。</strong></p>
<p>Firefox ，Internet Explorer ，Opera … 现在有太多的浏览器，虽然有的浏览器只是一小部分的人在使用，但如果你设计的主题不能兼容所有的浏览器，那它就不是一个好的主题。你可以到 http://browsershots.org/ 上检验你的主题是否兼容现有的浏览器，很简单，不过需要一些花一些时间等待结果。</p>
<p><strong>3 . 对你的代码进行注释。</strong></p>
<p>对于一些主题，这个问题不是很重要，特别是如果你设计的主题只是在 wordpress 默认主题的基础上做出不大的修改。但如果你设计的主题比较复杂，而且你还想在以后对这个主题做出修改，那对你的代码进行注释就非常重要了，而且，这也方便别人对你的主题做出修正。</p>
<p><strong>4 . 做出属于你的独特风格。</strong></p>
<p>没有比一直点击你的测试站点来查看你对你设计主题所做出的修改更麻烦的事了，但是，如果你克服了这些问题，设计出的主题与 wordpress 默认主题有着很大的分别，并形成了自己的风格，那你之前所作的那些事就很有意义了，会有很多人喜欢并使用你的主题。</p>
<p><strong>5 . 对你设计的主题进行试运行。</strong></p>
<p>试运行是极其重要的，你可以找出主题的 bug 。让更多的人看到你的主题，你可以从他们那里得到很好的建议，并得到使用者的反馈，这样能更好的完善你设计的主题。</p>
<p><strong>6 . 听取别人的意见（对某些内容进行来访者投票）</strong></p>
<p>其它使用者只会关心你的主题是不是满足他们的需求，在他们的网站上能不能更好的展示他们的内容，满足大多数人的需求，就是一个成功的主题。</p>
<p><strong>7 . 你的主题应具备 widget 。</strong></p>
<p>大多数的用户都喜爱 widget ，因为它很简单，所以你最好在你设计的主题里加入 widget 。</p>
<p><strong>8 . 设置好 404 页面。</strong></p>
<p>非常多主题都没有设置好 404 页面，这让我觉得很奇怪。要知道，404 页面是很重要的。</p>
<p><strong>9 . 设置好那些容易被遗忘的页面。</strong></p>
<p>有很多页面非常容易被人忽视，在设计的时候，你最好把所有页面都列出来，比如：Main index template 、Page template 、Single post template 、Attachment page template 、Search results template page 等等，别遗漏任何东西，这样才能使你的主题完整。</p>
<p><strong>10 . 你是否使用你设计的主题？</strong></p>
<p>这可能是最重要的了，一些成功的主题（下载次数最多的那些），都是设计者自己在使用的主题。因为在你自己使用的过程中，你会发现一些问题，并不断对他做出改进，其他人也会看到这个过程，大家也会相信，设计者自己都在使用这个主题，这个主题一定是好的。</p>
<p>原文：dailyblogtips.com    译者：peterzsk</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>给Dean’s FCKEditor for wordpress加上中文字体</title>
		<link>https://www.3code.cn/%e7%bb%99dean%e2%80%99s-fckeditor-for-wordpress%e5%8a%a0%e4%b8%8a%e4%b8%ad%e6%96%87%e5%ad%97%e4%bd%93/</link>
		
		<dc:creator><![CDATA[寒林]]></dc:creator>
		<pubDate>Wed, 08 Jun 2011 13:33:30 +0000</pubDate>
				<category><![CDATA[WORDPRESS教程]]></category>
		<category><![CDATA[WORDPRESS主题技术]]></category>
		<category><![CDATA[wordpress教程]]></category>
		<guid isPermaLink="false">https://www.3code.cn/?p=2712</guid>

					<description><![CDATA[给Dean’s FCKEditor for wordpress加上中文字体]]></description>
										<content:encoded><![CDATA[<p>一直就听说Dean’s FCKEditor For WordPress很强悍，装上后发现确实名不虚传啊！可是默认的字体没有中文，好吧，下面就是解决办法！</p>
<p>找到插件目录下的fckeditor-for-wordpress-plugin/ckeditor下的配置文件config.js：</p>
<p>在CKEDITOR.editorConfig = function( config ) 这句话后面的大括号就是&#8221;{ }&#8221;的第一行加上如下代码：</p>
<blockquote><p>config.font_names = &#8216;宋体/宋体;黑体/黑体;仿宋/仿宋_GB2312;楷体/楷体_GB2312;隶书/隶书;幼圆/幼圆;微软雅黑/微软雅黑;&#8217;+ config.font_names ;</p></blockquote>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>wordpress判断用户是否登录</title>
		<link>https://www.3code.cn/wordpress%e5%88%a4%e6%96%ad%e7%94%a8%e6%88%b7%e6%98%af%e5%90%a6%e7%99%bb%e5%bd%95/</link>
		
		<dc:creator><![CDATA[寒林]]></dc:creator>
		<pubDate>Mon, 06 Jun 2011 14:05:58 +0000</pubDate>
				<category><![CDATA[WORDPRESS教程]]></category>
		<category><![CDATA[WORDPRESS主题技术]]></category>
		<category><![CDATA[wordpress函数]]></category>
		<category><![CDATA[wordpress教程]]></category>
		<guid isPermaLink="false">https://www.3code.cn/?p=2709</guid>

					<description><![CDATA[根据当前访问者是否登录返回布尔值true或false。]]></description>
										<content:encoded><![CDATA[<p>is_user_logged_in()</p>
<p><strong>说明 </strong><br />
根据当前访问者是否登录返回布尔值true或false。</p>
<p><strong>参数 </strong><br />
该函数不接受任何参数。</p>
<p><strong>用法</strong></p>
<p>复制代码 代码如下:</p>
<p>&lt;?php if ( is_user_logged_in() ) { &#8230; } ?&gt;<br />
<strong>示例 </strong><br />
根据当前访问者的登录情况，使用is_user_logged_in()函数在主题文件中展示不同输出结果。</p>
<p>复制代码 代码如下:</p>
<p>&lt;?php<br />
if ( is_user_logged_in() ) {<br />
echo &#8216;Welcome, registered user!&#8217;;<br />
} else {<br />
echo &#8216;Welcome, visitor!&#8217;;<br />
}<br />
?&gt;</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>WordPress主题添加一个前台登录表单</title>
		<link>https://www.3code.cn/wordpress%e4%b8%bb%e9%a2%98%e6%b7%bb%e5%8a%a0%e4%b8%80%e4%b8%aa%e5%89%8d%e5%8f%b0%e7%99%bb%e5%bd%95%e8%a1%a8%e5%8d%95/</link>
		
		<dc:creator><![CDATA[寒林]]></dc:creator>
		<pubDate>Mon, 06 Jun 2011 07:36:53 +0000</pubDate>
				<category><![CDATA[WORDPRESS主题技术]]></category>
		<category><![CDATA[WORDPRESS教程]]></category>
		<category><![CDATA[wordpress教程]]></category>
		<guid isPermaLink="false">https://www.3code.cn/?p=2706</guid>

					<description><![CDATA[如果有一个可以在当前页面直接登录博客的表单，是不是很方便，下面这段简单的代码就可实现这一功能。]]></description>
										<content:encoded><![CDATA[<p>如果有一个可以在当前页面直接登录博客的表单，是不是很方便，下面这段简单的代码就可实现这一功能。</p>
<p>&lt;?php if (!(current_user_can(&#8216;level_0&#8217;))){ ?&gt;<br />
&lt;h2&gt;登录&lt;/h2&gt;<br />
&lt;form action=&#8221;&lt;?php echo get_option(&#8216;home&#8217;); ?&gt;/wp-login.php&#8221; method=&#8221;post&#8221;&gt;<br />
&lt;input type=&#8221;text&#8221; name=&#8221;log&#8221; id=&#8221;log&#8221; value=&#8221;&lt;?php echo wp_specialchars(stripslashes($user_login), 1) ?&gt;&#8221; size=&#8221;20&#8243; /&gt;<br />
&lt;input type=&#8221;password&#8221; name=&#8221;pwd&#8221; id=&#8221;pwd&#8221; size=&#8221;20&#8243; /&gt;<br />
&lt;input type=&#8221;submit&#8221; name=&#8221;submit&#8221; value=&#8221;登录&#8221; class=&#8221;button&#8221; /&gt;<br />
&lt;p&gt;<br />
&lt;label for=&#8221;rememberme&#8221;&gt;&lt;input name=&#8221;rememberme&#8221; id=&#8221;rememberme&#8221; type=&#8221;checkbox&#8221; checked=&#8221;checked&#8221; value=&#8221;forever&#8221; /&gt; 记住密码&lt;/label&gt;<br />
&lt;input type=&#8221;hidden&#8221; name=&#8221;redirect_to&#8221; value=&#8221;&lt;?php echo $_SERVER[&#8216;REQUEST_URI&#8217;]; ?&gt;&#8221; /&gt;<br />
&lt;/p&gt;<br />
&lt;/form&gt;<br />
&lt;a href=&#8221;&lt;?php echo get_option(&#8216;home&#8217;); ?&gt;/wp-login.php?action=lostpassword&#8221;&gt;忘记密码&lt;/a&gt;<br />
&lt;?php } else { ?&gt;<br />
&lt;h2&gt;退出&lt;/h2&gt;<br />
&lt;a href=&#8221;&lt;?php echo wp_logout_url( get_bloginfo(&#8216;url&#8217;) ); ?&gt;&#8221; title=&#8221;&#8221;&gt;退出登录&lt;/a&gt;&lt;br /&gt;<br />
&lt;?php }?&gt;</p>
<p>将上面的代码粘贴到适当的位置，比如侧边或一个独立的页面模板中即可，方便快捷，登录后点击退出，会自动返回到首页。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>让WordPress支持中文用户名</title>
		<link>https://www.3code.cn/%e8%ae%a9wordpress%e6%94%af%e6%8c%81%e4%b8%ad%e6%96%87%e7%94%a8%e6%88%b7%e5%90%8d/</link>
		
		<dc:creator><![CDATA[寒林]]></dc:creator>
		<pubDate>Mon, 06 Jun 2011 07:31:44 +0000</pubDate>
				<category><![CDATA[WORDPRESS主题技术]]></category>
		<category><![CDATA[WORDPRESS教程]]></category>
		<category><![CDATA[wordpress教程]]></category>
		<guid isPermaLink="false">https://www.3code.cn/?p=2703</guid>

					<description><![CDATA[让WordPress支持中文用户名]]></description>
										<content:encoded><![CDATA[<p>WordPress 注册用户的时候，不能注册中文用户名，用以下方法解决：</p>
<p>打开 wp-includes/formatting.php，找到</p>
<blockquote><p>function sanitize_user( $username, $strict = false ) {</p></blockquote>
<p>把 $strict 强制指定为 false，即在 sanitize_user 这行函数的下一行添加如下代码</p>
<blockquote><p>$strict = false;</p></blockquote>
<p>在 WordPress 2.8.3 / 2.8.4 上成功，其他版本应该没有问题</p>
<p>有人说“后台可以显示中文昵称”，以及“升级需要从新修改文件”等问题，没错，话是这么说的，除非 WordPress 能整合了这个功能，但毕竟解决了不能注册中文名的问题，在此仅作为一个技巧给大家分享。</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
