web-dev-qa-db-ja.com

このJavaScriptをget_permalinkで動作させる方法

私はこの素晴らしいフォーラムのことをかなり新しいので、以下のこの質問がここにあるかどうかわからない。

ちょっとした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");

});

私が手に入れたいと思うどんな援助でも。

2
Jerry.S

おそらくこれを行うための最善の方法は、wp_localize_scriptを使用して上記で提案したとおりです。

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(), ) );
}

これで、パーマリンクはsomeUniqueName.myPermalink経由であなたのJavaScriptにアクセスできるようになります。

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

});

その鍵となる部分は次の場所に文書化されています: http://codex.wordpress.org/Function_Reference/wp_localize_script