Neden bir blog dahil değil miyiz?

5 Cevap php

Ben genellikle "olmak güçler" bir web sitesinde birden fazla yerde bir sayfanın bir kopyasını istediğiniz bir senaryoda içine çalıştırın. Aslında yinelenen içerik yerine, tüm yapmam vurgulanmış, ve sonra sayfayı bulunur nav bölümünü geçersiz olduğunu. Son sayfa şuna benzer:

<?php
    $top_nav_item_id = 'teen';
    include('../interests/teacher-resources.php');
?>

Bu, tipik olarak çalışır. Ben wordpress yapılan bir blog kategorisinde, bu çoğaltmak için çalışıyorum. Ben almak gibi ne olursa olsun ben ne boş bir sayfa olduğunu. Ben şu satırları tüm denedim:

<?php
    include('../blog/index.php');
    include('../blog/type/teen/index.php');
    include('../blog/type/teen/');
    include('../blog/');
?>

Herkes herhangi bir fikir var mı? Bu bir URL yeniden bir şey mi? Ben söz konusu kategori için şablon dosyasını dahil etmek var mı?

Herhangi bir yardım takdir edilmektedir.

5 Cevap

Bu çözüm kesmek biraz, ama sonra, sorun başlamak için kesmek biraz.

Ben blog sayfası dahil değil neden iyi bir açıklama, ama benim için çalışacak herhangi bir alternatifleri aldı.

Benim nihai çözüm, doğrudan o sayfa için kategori şablonu değiştirmek oldu. Başlangıçta belirttiğim gibi, ben menü öğesi o bölüme ait sayfanın görünüm vermek için, nav vurgulanır kontrolü için hangi $ top_nav_item_id kullanın. Aksine bu geçersiz dışında, ben sadece bir sorgu dizesi koşullu yaptı. Sürece kullanıcı sitemde okunaklı bağlantıları takip ediyor, onlar doğru sorgu dizesi olsun ve hiçbir sorun yaşamayacaksınız.

$ _POST Wordpress devre dışı bırakılır. (WP yerleşik) $ sorgu_dizgesi önbelleğe çeşit kullanır ve ilk yüklenen her zaman olduğu gibi görüntüler.

Nihai çözüm:

if(strtolower($_SERVER['QUERY_STRING'])=='display=teen') {
	$top_nav_item_id = 'teen';
} else {
	$top_nav_item_id = 'programs';
}

Yardım etmeye çalıştı herkese teşekkürler.

PHP include dosyaları değil, URL'ler beklediğini, bu yüzden WordPress tarafından maruz URL ad erişimi yok. Bu dosyalar, disk yoktur; mod_rewrite ilk index.php, WordPress gerçekten orijinal URL tabanlı ne istediğini anlamadan bir iç istek haline oldukça URL'leri döner, veritabanından bir sürü şeyler getirir, sonra sayfa üretir.

Bu oldukça karmaşık bir konu, ve baştan çok belirgin olmadığı biridir. This sayfa başlamanıza yardımcı olmalıdır. Bağlantılı sayfadaki açıkladı - tuşu WordPress blog başlığını dahil etmektir. Muhtemelen de WordPress motorun API kullanarak kaynaklar için WordPress Codex kontrol etmek isteyeceksiniz.

ini_set('display_errors', true);
error_reporting(E_ALL);

Yanlış gidiyor, ama öyle ne bir fikrim yok. Bilemezsiniz çünkü Belki Wordpress küresel ne değişkenler, fonksiyonlar, sınıflar kesişir, Aslında wordpress gibi çözümlerini de dahil kötü bir fikir ... belki bazı değişkenler overrided ediliyor, bu ortamı bulamıyor.

PS: Ve, bu arada, kullandığı dosya sistemi yolları değil URL'leri kapsar.

Benzer sorunlar için ben içeriğinin kopyasını eklemek için iframe kullanabilirsiniz. Siz url bir "? Embed = 1" bayrak bakmak için özgün bir sayfa yazmak ve embed bayrağı varken, sadece ana sayfadaki gömülebilir içerik bulunmaktadır (yani araç çubukları ve gereksiz olurdu çerçeveleri terk yapabilirsiniz .) Yani iframe src url içeriği gömmek için? embed = 1 etiketini kullanabilirsiniz.