特定类别帖子中的 Wordpress 独特背景
Wordpress unique background in posts that are in specific category
我有一个代码:
<body <?php if( in_category( 11446 ) ) { echo "style=\"background-image: url('my-background-url-of-image');background-repeat:repeat;\" onclick=\"window.open('http://www.domain.com');\""; } ?> >
此代码仅在页面完全加载之前有效,然后发生了某些事情,并且它不起作用我从检查元素中假设 onclick 函数发生了变化,但我没能找到是什么部分欺骗了它。
此代码的作用是设置特定类别中的唯一正文背景,并且背景是可点击的。
但是由于一些 javascript 错误,当页面加载满时它不起作用,所以也许有人可以向我解释如何删除 Javascript 上的 attr,而不是添加我想要的域。或者举例说明如何仅使用 href 来执行替代代码。
谢谢。
我假设您正在构建一个 Wordpress 模板,并且要使用的背景图像基于 Wordpress 的类别 post。
这不使用Javascript。相反,它所做的是在 HTML5 文档的 head 标记内动态创建 CSS 声明块。它不为 body 标签内联 CSS。
<?php
// ====================================================
// Solution #1
// Background Image Only
// ====================================================
function GetThisWordpressPostCategory() {
// Do post category to filename mapping here
return("cars");
}
function in_category() {
// Just a dummy to simulate Wordpress in_category call
return(true);
}
function BodyBackground($category) {
$bodyCss = "";
if (in_category($category)) {
$bodyCss =<<<CSS
<style type="text/css">
body {
background-image: url('{$category}.jpg');
}
</style>
CSS;
}
return($bodyCss);
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Category background</title>
<?php
$category = GetThisWordpressPostCategory();
echo BodyBackground($category);
?>
</head>
<body>
</body>
</html>
<?php
// ====================================================
// Solution: 2
// Clickable div spanning viewport
// ====================================================
function GetThisWordpressPostCategory() {
// Do post category to filename mapping here
return("cars");
}
function in_category() {
// Just a dummy to simulate Wordpress in_category call
return(true);
}
function PageCss($category) {
$pageCss = "";
if (in_category($category)) {
$pageCss =<<<CSS
<style type="text/css">
html, body, #page {
width: 100%;
height: 100%;
margin: 0;
padding: 0;
background-image: url('{$category}.jpg');
}
#page-anchor {
display: block;
width: 100%;
height: 100%;
}
</style>
CSS;
}
return($pageCss);
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Category background</title>
<?php echo PageCss(GetThisWordpressPostCategory()); ?>
</head>
<body>
<div id="page">
<a id="page-anchor" href="http://www.google.com"></a>
</div>
</body>
</html>
我有一个代码:
<body <?php if( in_category( 11446 ) ) { echo "style=\"background-image: url('my-background-url-of-image');background-repeat:repeat;\" onclick=\"window.open('http://www.domain.com');\""; } ?> >
此代码仅在页面完全加载之前有效,然后发生了某些事情,并且它不起作用我从检查元素中假设 onclick 函数发生了变化,但我没能找到是什么部分欺骗了它。
此代码的作用是设置特定类别中的唯一正文背景,并且背景是可点击的。
但是由于一些 javascript 错误,当页面加载满时它不起作用,所以也许有人可以向我解释如何删除 Javascript 上的 attr,而不是添加我想要的域。或者举例说明如何仅使用 href 来执行替代代码。
谢谢。
我假设您正在构建一个 Wordpress 模板,并且要使用的背景图像基于 Wordpress 的类别 post。
这不使用Javascript。相反,它所做的是在 HTML5 文档的 head 标记内动态创建 CSS 声明块。它不为 body 标签内联 CSS。
<?php
// ====================================================
// Solution #1
// Background Image Only
// ====================================================
function GetThisWordpressPostCategory() {
// Do post category to filename mapping here
return("cars");
}
function in_category() {
// Just a dummy to simulate Wordpress in_category call
return(true);
}
function BodyBackground($category) {
$bodyCss = "";
if (in_category($category)) {
$bodyCss =<<<CSS
<style type="text/css">
body {
background-image: url('{$category}.jpg');
}
</style>
CSS;
}
return($bodyCss);
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Category background</title>
<?php
$category = GetThisWordpressPostCategory();
echo BodyBackground($category);
?>
</head>
<body>
</body>
</html>
<?php
// ====================================================
// Solution: 2
// Clickable div spanning viewport
// ====================================================
function GetThisWordpressPostCategory() {
// Do post category to filename mapping here
return("cars");
}
function in_category() {
// Just a dummy to simulate Wordpress in_category call
return(true);
}
function PageCss($category) {
$pageCss = "";
if (in_category($category)) {
$pageCss =<<<CSS
<style type="text/css">
html, body, #page {
width: 100%;
height: 100%;
margin: 0;
padding: 0;
background-image: url('{$category}.jpg');
}
#page-anchor {
display: block;
width: 100%;
height: 100%;
}
</style>
CSS;
}
return($pageCss);
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Category background</title>
<?php echo PageCss(GetThisWordpressPostCategory()); ?>
</head>
<body>
<div id="page">
<a id="page-anchor" href="http://www.google.com"></a>
</div>
</body>
</html>