WordPress 网站自定义设置文章详情页模板
真是受够了 WordPress 只有一个文章详情页模板,想要针对不同的分类目录使用不同的文章详情页展示效果怎么办呢?白天教你使用自定义模板的方法来实现。
如何在WordPress中自定义PHP页面并操作数据库
1. 尝试设置一个页面模板1)拷贝一个并改名为其它名,如;2)在页面最顶部添加以上两步就可以创建一个页面模板了,修改并保存好这个文件后,创建一个新页面或者修改已存在的页面。 在右下边有个“页面模板”的面板,在下拉菜单中选中“友链”后保存就可以了。 然后在页面中添加任何内容,包括html代码就可以显示了。 可是我的需求是要自己完成PHP代码获取数据并展示,它不能这么做。 2. 调用 WordPress 的 API实现URL正确跳转这种方法的自由度较高,并且可以创建非WordPress格式的URL。 比如我们要把 /list 转交给主题文件夹下的 /custom/ 来处理,就可以用这种方式来处理。 这种方法用到 template redirect 钩子,template redirect 是 WordPress 在预处理好所有参数设置之后决定调用主题模板的时候调用的。 在模板函数文件中添加以下实例代码:function loadCustomTemplate($template) {global $wp_query;if(!file_exists($template))return;$wp_query->is_page = true;$wp_query->is_single = false;$wp_query->is_home = false;$wp_query->comments = false;// if we have a 404 statusif ($wp_query->is_404) {// set status of 404 to falseunset($wp_query->query[error]);$wp_query->query_vars[error]=;$wp_query->is_404=false;}// change the header to 200 OKheader(HTTP/1.1 200 OK);//load our templateinclude($template);exit;} function templateRedirect() {$basename = basename($_SERVER[REQUEST_URI], ? . $_SERVER[QUERY_STRING]);loadCustomTemplate(TEMPLATEPATH./custom/./$);}add_action(template_redirect, templateRedirect);这样就实现了 WordPress 查找 /custom 文件夹下的 php 文件,并且将相匹配的 URL 请求转交给对应的 php 文件来处理的效果,与此同时,这个 php 文件还保持了对 WordPress API 的调用,因此留给我们的空间非常大。 接下来就可以在 /custom 文件夹下自定义一个文件然后通过链接/list访问。 3. 添加页面内容,获取自定义数据库/表中的内容然后就可以根据需要自己需要来实现自己想要的功能,这里需要有以下几点要处理:1)如何操作数据库WordPress提供了一个全局变量$wpdb,并将其实例化为wpdb类的对象。 这样我们就可以直接使用$wpdb来调用所有的数据库操作函数。 通过这个$wpdb对象,我们可以对WordPress数据库进行任何操作,包括建表、查询、删除、更新等。 使用$wpdb->get_results实现执行sql语句操作数据库,并获取结果。 global $wpdb;$sql= SELECT * FROM .$wpdb->;$a = $wpdb->get_results($sql);2)使用wordpress的样式通过F12查看首页代码就可以发现只要使用对应的class样式就能轻松让页面统一规整。 那么就把对应的html添加到自定义PHP页面中即可。 3)利用wordpress的规则轻松实现翻页wordpress已经默认支持翻页,格式如/list?page=$1,只要在自定义的页面里面定义好每页返回正确的内容就好啦。 4. 设置nginx rewrite规则可读性强的URL一定不能是/list?page=2这样的格式,对爬虫也不友好,那就需要配置好rewrite规则,我使用的是nginx的配置为:rewrite ^(.*)/indexed/page/([0-9]+)$ $1/indexed?page=$2 last;到现在为止,离成功只有一步之遥了,那就是新建一个页面, 大功告成!
如何自定义WordPress文章,页面,标签和分类的固定链接
1. 有自定义文章类型,希望自定义文章类型和默认的Post都在首页的主循环中显示。 2.有自定义文章类型(产品),首页主循环中只显示产品。 注意,本教程中只对应首页的主循环,即不适用首页一些侧边栏、或者自定义的文章查询区域。 将下面代码添加到主题的中即可function ashuwp_posts_per_page($query){//首页或者搜索页的主循环if ( (is_home() || is_search()) && $query->is_main_query() )//$query->set( ‘post_type’, array( ‘product’ ) ); //只显示product$query->set( ‘post_type’, array( ‘post’, ‘product’ ) ); //主循环中显示post和productreturn $query;}add_action(‘pre_get_posts’,’ashuwp_posts_per_page’);利用pre_get_posts钩子,不光可以实现本教程所需要的内容,还可自由发挥,改变主循环的其它一些参数。 比如仅仅想让首页的文章数量显示为5篇。 function ashuwp_posts_per_page($query){//仅首页if ( is_home() )$query->set(‘posts_per_page’,5);//每页显示5篇return $query;}add_action(‘pre_get_posts’,’ashuwp_posts_per_page’);
wordpress怎么自定义页面
首先你要创建一个页面模板:
在主题文件夹内建立一个空的php文件然后输入一下代码,template name 模板名
本文地址: https://www.q16k.com/article/86fd2566d42775faea6a.html