如何使此JavaScript与Get_Permarink一起工作

时间:2013-12-27 作者:Jerry.S

我是这个很棒的论坛的新手,因此不确定下面的问题是否属于这里。

一个小JavaScript,当我在其中放置一个静态url时,它可以完美地工作,但我不知道如何使用get_permalink()

var $el, $tempDiv, $tempButton, divHeight = 0;

$.fn.middleBoxButton = function(text, url) {

return this.hover(function(e) {

$el = $(this).css("border-color", "white");
    divHeight = $el.height() + parseInt($el.css("padding-top")) + parseInt($el.css("padding-bottom"));

    $tempDiv = $("<div />", {
        "class": "overlay rounded"
    });

    $tempButton = $("<a />", {
        "text": text,
        "href": url,
        "class": "widget-button rounded",
        "css": {
            "top": (divHeight / 2) - 7 + "px"
        }
    }).appendTo($tempDiv);

    $tempDiv.appendTo($el);

}, function(e) {

    $el = $(this).css("border-color", "#999");

    $(".overlay").fadeOut("fast", function() {
        $(this).remove();
    })
});
}

$(function() {
$(".widget-one").middleBoxButton("Read More", "http:// bla bla bla");

});
任何我想得到的帮助。

1 个回复
最合适的回答,由SO网友:Will 整理而成

最好的方法可能是如上所述,使用wp\\u localize\\u脚本。

您没有提到如何包含javascript,但我假设您是以WordPress的方式进行的。所以,像这样:

add_action( \'wp_enqueue_scripts\', \'wwm_enqueue_scripts\' );

function wwm_enqueue_scripts()
{

 //see the documentation if you don\'t understand what\'s going on here. 
 wp_enqueue_script( \'some-handle\', \'/path/to/my-custom-js.js\', $deps, $version, $in_footer\' );
 //now, to define a javascript variable for the script to use
 wp_localize_script( \'some-handle\', \'someUniqueName\', array( \'myPermalink\' => get_permalink(), ) );
}
现在,您的javascript可以通过someUniqueName访问permalink。myPermalink所以。。。

$(function() {
$(".widget-one").middleBoxButton("Read More", someUniqueName.myPermalink);

});
其关键部分记录在:http://codex.wordpress.org/Function_Reference/wp_localize_script

结束

相关推荐

是否使用调用插件选项向wp_head添加javascript?

我正在尝试用wordpress编写一个插件,并且已经分阶段完成了这项工作,我知道如何将javascript添加到wp\\U头部,但是我不知道如何向插件选项添加多个函数调用。这是我第一次尝试编写插件,所以我知道我做错了。非常感谢您的反馈!如果我有: function tweet_feed_it() { echo \'<script type=\"text/javascript\"> $(document).ready(function() {