我在标题部分有一个外部javascript,就像这样:
var express = require('express');
var bodyParser = require('body-parser');
var app = express();
app.use(bodyParser());
app.get('/', function(req, res){
var html = '<form action="/" method="post">' +
'Enter your name:' +
'<input type="text" name="userName" placeholder="..." />' +
'<br>' +
'<button type="submit">Submit</button>' +
'</form>';
res.send(html);
});
app.post('/', function(req, res){
var userName = req.body.userName;
var html = 'Hello: ' + userName + '.<br>' +
'<a href="/">Try again.</a>';
res.send(html);
});
app.listen(80);
此javascript会在网站的每个页面中为Cookie法创建一个横幅。横幅仅在您第一次进入网站时显示。
我想在除两页之外的所有网站加载此javascript。我使用Wordpress和Genesis Framework。
我该怎么做?
答案 0 :(得分:0)
尝试在页面模板的<head>...</head>
内添加以下PHP,其中
<script src="bannerscript.js"></script>
通常会:
<?php
$nobanner = array('page1','page2');
$page = $_SERVER['SCRIPT_NAME'];
$page = str_replace('/', '',$page);
if (!in_array($page,$nobanner)) {
echo '<script src="bannerscript.js"></script>';
}
?>
脚本检查URI,验证页面不是横幅不应显示的页面,然后正常包含横幅请求。
在横幅不应显示的任何页面上 - 在上面的示例中,page1
和page2
- 横幅请求永远不会包含在页面中{{ 1}}。
答案 1 :(得分:0)
要以典型的Wordpress方式加载脚本,您必须检查当前页面的ID。
<div id="clock"> 00:00:00 </div>
<div id="clock"> 00:00:01 </div>
<div id="clock"> 00:00:02 </div>
<div id="clock"> 00:00:03 </div>
将代码放入// Main Scripts
function register_banner_js() {
if (!is_admin()) {
/* Get id of current page*/
$page_id = get_queried_object_id();
/* Compare the non-relevant page's id with the current page's id, if they don't match, enqueue your banner script*/
$ids = array(page_id_1, page_id_2);
if (!in_array($page_id, $ids)){
wp_register_script('bannerscript', 'path/to/your/bannerscript.js', 'jquery', null, TRUE);
wp_enqueue_script('bannerscript');
}
}
}
add_action('wp_enqueue_scripts','register_banner_js')
。请务必检查您网页的ID,并将其放在functions.php
数组中,其中包含不应加载bannercript的所有相关网页ID。
如果您想了解有关Javascript入队的更多信息,请查看Wordpress Hook wp_enqueue_script。