wordpress获取当前分类名称看似很多函数都可以解决,但是,实际上如果存在父分类并且父分类下有子分类且没有文章的话,很难获取到
百度了下,发现所说的都是没有办法解决这个问题的。
前提:wordpress父分类存在子分类,父分类下没有文章!获取当前分类标题可以或者只能用single_cat_title(),如果用get_the_category()或者其他一些函数的话,子分类可以正常获取,当打开的是父分类的时候,获取的标题是该父分类下最后一个子分类的标签。其他,如ID,别名等都是一样的!
这里用 single_cat_title()区别打开的两个分类,用 get_the_category()获取分类信息,主分类“乱折腾事”和子分类“wordpress”获取的数组都是一样的。子分类“wordpress”是主分类“乱折腾事”的最后一个子分类。如果需要获取主分类的标题等信息,显然 get_the_category不能用。标题可以用 single_cat_title函数。而链接,ID等不行,这里就需要对分类进行判断,判断是否是主分类!
判断其实也很简单,就判断 single_cat_title获取的标题和 get_the_category获取的标题是不是一样的。如果是一样的就说明是子分类,不一样的说明是父分类!然后分别对子分类父分类的不同情况设置不同的链接。
判断是主分类,ID就用category_parent,链接可以通过这个ID来获取,用get_category_link(ID)。
判断是子分类,就按常规的获取即可!
wordpress相邻文章(下一篇下一篇)显示文章略缩图
wordpress相邻文章(下一篇下一篇)显示文章相邻文章的略缩图,如
在没有略缩图时显示默认图片
原理:通过文章ID调用略缩图,functions.php插入调用略缩图函数
if(function_exists('add_theme_support')){
add_theme_support( 'post-thumbnails' );
}
function post_thumbnail($id=false){
if(has_post_thumbnail($id)){ //如果有缩略图,则显示缩略图
the_post_thumbnail($id);
}else{
global $post, $posts;
$post_img = '';
$post_content=$id?get_post($id)->post_content:$post->post_content;
ob_start();
ob_end_clean();
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post_content, $matches);
$post_img_src = $matches [1][0];
$post_img = $post_img_src; //如果没有缩略图,则显示日志中的第一张图片
if(empty($post_img_src)){ //如果日志中没有图片,则显示默认图片
$post_img = get_bloginfo("template_url").'/images/noimg.jpg';
}
$post_img = str_replace('//','//',$post_img);
return $post_img;
}
}
文章列表可以直接通过post_thumbnail()调用,在上一篇下一篇中通过相邻文章的ID调用,上一篇文章ID:get_previous_post()->ID,下一篇文章ID:get_next_post()->ID,调用代码
上一篇:post_thumbnail(get_previous_post()->ID)
下一篇:post_thumbnail(get_next_post()->ID)
当然也可以通过任意文章ID调用
笔记
·
wordpress添加编辑器可视化按钮代码
需要功能:
1、在编辑器可视化界面添加一个按钮
2、点击按钮弹出输入框
添加按钮:
在functions.php模板函数文件中添加插入按钮函数
挂载函数到正确的钩子
function outurl_mce_button() {
// 检查用户权限
if ( !current_user_can( 'edit_posts' ) && !current_user_can( 'edit_pages' ) ) {
return;
}
// 检查是否启用可视化编辑
if ( 'true' == get_user_option( 'rich_editing' ) ) {
add_filter( 'mce_external_plugins', 'outurl_plugin' );
add_filter( 'mce_buttons', 'outurl_button' );
}
}
add_action('admin_head', 'outurl_mce_button');
声明新按钮的脚本
function outurl_plugin( $plugin_array ) {
$plugin_array['outurl'] = get_template_directory_uri() .'/images/js/outurl.js';
return $plugin_array;
}
在编辑器上注册新按钮
function outurl_button( $buttons ) {
array_push( $buttons, 'outurl' );
return $buttons;
}
outurl.js实现功能函数
(function () {
tinymce.PluginManager.add('outurl', function (editor, url) {
editor.addButton('outurl', {
title: '添加外链',
image: url+"/outurl.png",
onclick: function () {
//editor.insertContent('WPExplorer.com is awesome!');
editor.windowManager.open({
title: '请输入标签及外链',
body: [
{
label:'输入标签',
type: 'textbox',
name: 'outkey',
minWidth: 400,
minHeight: 30,
multiline: false,
value: ''
},
{
label:'输入链接',
type: 'textbox',
name: 'outurl',
minWidth: 400,
minHeight: 30,
multiline: false,
value: ''
}
],
onsubmit: function (e) {
//获取输入内容
var outkey = e.data.outkey;
var outurl = e.data.outurl;
var urls=jQuery("#urls_value").val();
var urlarr=urls.split("[++++++++++]");
var i=urlarr.length;
if(outkey.length > 0 && outurl.length > 0) {
var txt=jQuery("#urls_value").val()+'[++++++++++]'+outurl;
jQuery("#urls_value").val(txt);
//将地址拼接到iframe ,输出到编辑器
editor.insertContent('[ outurl id='+i+']'+outkey+'[ /outurl]');
}else{
alert("标签和URL都不能为空!");
}
}
});
}
});
});
})();
最后处理短代吗
function outurl($atts,$content){
global $post;
extract(shortcode_atts(array("id"=>'0'),$atts));
return '<a target="_blank" rel="nofollow" href="'.get_bloginfo("url").'/go?e='.$post->ID.'_'.$id.'_1_1_'.time().'">'.$content.'</a>';
}
以上是以博客外链为例
笔记
·
wordpress添加编辑器按钮
最近在写一个新的wordpress模板,其中有一个文章外链问题,需要在编辑器上添加一个按钮!
基本功能是:点击按钮弹出输入框,在输入框内黏贴外来链接,短代码功能修改链接跳转go=xxx这样
按钮移植这个博客的代码,发现问题:
1、不显示按钮
2、不支持jq
就算重新用这个博客的模板,一样无法使用这个功能,很奇怪,wordpress的版本是一样的!
也就是两个完全一样的环境下,两个模板的一些功能无法使用!
目前正在测试中,看具体是哪里的问题!
笔记
·
WordPress评论表单添加验证码
上次看到朋友的博客,垃圾评论竟然上万条,这得多久没有进入后台?还是没有清理的习惯?
虽说,评论的用途似乎不是很大,WordPress现在折腾的人也少了吧。终究还是限制了一下评论,添加了一个验证码,且看下后续的效果
原本是想把验证码放在“提交评论”左侧的,但折腾了半天,还是不知道怎么放过来,测试了一些钩子,似乎也都不行。暂且先这样吧!
笔记
·
Zero零分
站龄14年资深站长
一个喜欢折腾,却又折腾不出像样东西的,不会PHP的PHP程序员!
476
文章 26
评论 27
分类 839
标签 7
友链
文章 26
评论 27
分类 839
标签 7
友链
百度广告
最近更新
- 01 微信小程序scroll-view下拉刷新,出现一直刷新
- 02 微信小程序scroll-view禁止滚动条
- 03 微信小程序开发新版本检测、网络请求、json格式判断封装
- 04 利用Fiddler抓包工具下载微信视频号视频
- 05 整理了一张吴宗宪专辑无损CD《无尽的爱》APE格式音频
- 06 百度AI语音演示接口后获取的音频流处理
- 07 Win7 安装pr2018(AdobePremiereCC2018)记录说明
- 08 win7无法查看gif动画图解决插件Image_Viewer_for_Windows_7
- 09 win7 视频无法预览图片(文件夹内不显示略缩图)
- 10 微信小程序解决上滑多次加载重复内容的问题
热门推荐
最新评论
标签云
微信小程序
小程序开发
视频下载
Fiddler
微信视频号
无损CD
无尽的爱
吴宗宪
文字转语音
百度ai
pr2018
win7
Image Viewer for Windows 7
win7查看GIF
视频预览图片
视频略缩图
视频解码器
fireworks
水星
移动热点
ps ico
ps插件
foreach
php
保存远程图片
登录过期
phpmyadmin
扩展屏
多显示器
自动登陆
netplwiz
CSS动画
wordpress图片
sitemap
无线端
调试
a标签
P标签
calc
justify
pycharm
Python
相邻文章
logo
赵薇
html
win11
Windows
扫黑风暴
我的饭店
淘花
游艇
港姐
周星驰
unisoc
荣耀paly5
信用卡
AI机器人
华智冰
小冰
评论功能已经关闭!