我做了一个插件来添加图片在每一页的右下角。下面是功能正确的代码,并将图像作为内容添加。
add_filter('the_content', 'scroll_to_top_data');但是我想把它添加到我尝试过的右下角的footer之后:
add_action('wp_footer', 'scroll_to_top_data'); 但这不会在任何地方显示图像,也不会显示任何错误。我使用的是二十五主题,但我当然希望这个插件在wordpress的所有主题上都是可用的。请告诉我为什么它不能和wp_footer挂钩一起工作,我怎样才能把这个放在页脚之后?下面是scroll_to_top_data函数
function scroll_to_top_data($content = NULL) {
$post_id = get_the_ID();
global $wpdb;
$table = $wpdb->prefix . 'scroll';
$myrows = $wpdb->get_results("SELECT * FROM $table WHERE id = 1");
$beforeafter = $myrows[0]->beforeafter;
$where_like = $myrows[0]->where_like;
$status = $myrows[0]->status;
$image = $myrows[0]->image;
$action = $myrows[0]->action;
$color = $myrows[0]->color;
$display = $myrows[0]->display;
$except_ids = $myrows[0]->except_ids;
$url = $myrows[0]->url;
$width = $myrows[0]->width;
$position = $myrows[0]->position;
$str = $image;
if ($status != 0) {
$scrollImage = '<img src="' . $image . '"';
return $content . $scrollImage;
} else {
return $content;
}
}发布于 2015-11-04 00:34:01
wp_footer操作不像筛选器那样传递任何参数或期望任何返回值(在本例中为$content)。筛选器希望传入要修改和返回的信息,而操作则不是。要将您的图像输出,您必须更改以下内容:
if ($status != 0) {
$scrollImage = '<img src="' . $image . '"';
return $content . $scrollImage;
} else {
return $content;
}要实际回显图像:
if ($status != 0) {
echo '<img src="' . $image . '" />'; //doesn't seem to have a closing bracket?
}而不是试图将其附加到现有内容。
发布于 2016-10-21 23:05:32
可能是你的scroll_to_top_data永远不会被调用,特别是当你把它放在你的插件的构造函数中的时候。您需要将其更改为数组(‘wp_footer’,add_action($this,'scroll_to_top_data'));
https://stackoverflow.com/questions/33504180
复制相似问题