Gördüğüm çözümler, bir temaya javascript özellikleri ekleme perspektifindendir. Ancak OP, özellikle, " Tek bir WordPress sayfası için tam olarak nasıl eklerim ?" Diye sordu. Bu, tek tek gönderilerin farklı javascript destekli "widget'lara" sahip olabileceği Wordpress blogumda javascript'i nasıl kullandığım gibi görünüyor. Örneğin, bir gönderi, kullanıcının değişkenleri (kaydırıcılar, onay kutuları, metin giriş alanları) değiştirmesine ve sonuçları çizmesine veya listelemesine izin verebilir.
JavaScript perspektifinden başlayarak:
- JavaScript işlevlerinizi ayrı bir ".js" dosyasına yazın
Gönderinizin html'sine önemli miktarda JavaScript eklemeyi aklınızdan bile geçirmeyin — kodunuzla bir JavaScript dosyası veya dosyaları oluşturun.
- JavaScript'inizi gönderinizin html'si ile arayüzleyin
JavaScript widget'iniz html kontrolleri ve alanlarıyla etkileşime girerse, bu öğeleri JavaScript'ten nasıl sorgulayacağınızı ve ayarlayacağınızı ve ayrıca UI öğelerinin JavaScript işlevlerinizi çağırmasına nasıl izin vereceğinizi anlamanız gerekir. Burada bir çift örnek var; ilk olarak, JavaScript'ten:
var val = document.getElementById(“AM_Freq_A_3”).value;
Ve html'den:
<input type="range" id="AM_Freq_A_3" class="freqSlider" min="0" max="1000" value="0" oninput='sliderChanged_AM_widget(this);'/>
- JavaScript widget'ınızın başlatma işlevini çağırmak için jQuery kullanın
Bunu, sayfa hazır olduğunda JavaScript widget'ınızı yapılandıran ve çizen işlevinizin adını kullanarak .js dosyanıza ekleyin:
jQuery(document).ready(function( $ ) {
your_init_function();
});
- Gönderinizin html kodunda, gönderiniz için gereken komut dosyalarını yükleyin
Wordpress kod düzenleyicide, genellikle yazının sonunda betikleri belirtirim. Örneğin, ana dizinimde bir betikler klasörüm var. İçeride, bazı yayınlarımın paylaşabileceği ortak JavaScript içeren bir yardımcı programlar dizinim var - bu durumda, kendi matematik yardımcı program işlevimden bazıları ve flotr2 çizim kitaplığı. Örneğin, medya yöneticisini kullanmak yerine, postaya özgü JavaScript'i başka bir dizinde, alt dizinlerle tarihe göre gruplamayı daha uygun buluyorum.
<script type="text/javascript" src="/scripts/utils/flotr2.min.js"></script>
<script type="text/javascript" src="/scripts/utils/math.min.js"></script>
<script type="text/javascript" src="/scripts/widgets/20161207/FreqRes.js"></script>
- JQuery'yi sırala
Wordpress jQuery'yi kaydeder, ancak Wordpress'e ihtiyacınız olduğunu söylemediğiniz sürece mevcut değildir. Bunu yapmazsanız, jQuery komutu başarısız olur. Birçok kaynak size bu komutu functions.php dosyanıza nasıl ekleyeceğinizi anlatır, ancak diğer bazı önemli ayrıntıları bildiğinizi varsayar.
İlk olarak, bir temayı düzenlemek kötü bir fikirdir; temanın gelecekteki herhangi bir güncellemesi değişikliklerinizi silecektir. Bir çocuk teması oluşturun. Bunu nasıl yapacağınız aşağıda açıklanmıştır:
https://developer.wordpress.org/themes/advanced-topics/child-themes/
Çocuğun functions.php dosyası, ana temanın aynı isimli dosyasını geçersiz kılmaz, ona ekler. Alt tema öğreticisi, üst ve alt style.css dosyasının nasıl sıralanacağını gösterir. JQuery'yi de kuyruğa almak için bu işleve başka bir satır ekleyebiliriz. İşte alt tema için tüm functions.php dosyam:
<?php
add_action( 'wp_enqueue_scripts', 'earlevel_scripts_enqueue' );
function earlevel_scripts_enqueue() {
// styles
$parent_style = 'parent-style';
wp_enqueue_style( $parent_style, get_template_directory_uri() . '/style.css' );
wp_enqueue_style( 'child-style',
get_stylesheet_directory_uri() . '/style.css',
array( $parent_style ),
wp_get_theme()->get('Version')
);
// posts with js widgets need jquery
wp_enqueue_script('jquery');
}