انجمن


مشکل در اینکلود کردن یک صفحه درقالب  (۱۶ نوشته)

  • سزار

    آفلاین
    عضو
    تعداد نوشته‌ها: ۶۷۸
    تشکر شده: ۱۱۸ بار
    # نوشته شده: ۱۲ سال پیش
    ۱ تیر ۱۳۸۸ - ۰۷:۴۱

    سلام دوستان خوبم .... ;-]

    من یک مشکل دارم تو اینکلود کردن صفحات تو قالبم .
    موضوع از این قراره که من چندین صفحه دارم که در شاخه قالب سایت در یک شاخه مثل work در پوسته قالبم وجود داره که با دادن لینک از صفحه Index سایت به اون مسیر رفته و اون فایل رو اجرا میکنه . حالا ما میخوام بیام بجای اینکه بره و در اون شاخه اجرا بشه ، بره شبیه یه چیزی مثل برگه به همراه Header و sidebar و footer باشه و ما فقط بخش مرکزی اونو تغییر بدیم و اون فایل رو اونجا اینکود بکنه .

    نمیدونم منظورم رو کامل رسوندم یا نه ... :O

    ممنون میشم کمکم کنید.
    شادی از آن لحظه های شما. @},- ~O)

  • pardis

    آفلاین
    عضو
    تعداد نوشته‌ها: ۴
    # نوشته شده: ۱۲ سال پیش
    ۱ تیر ۱۳۸۸ - ۱۳:۲۹

    یعنی میخواین یک صفحه ی وب تو یه مکان مشخص تو قالب لود بشه؟

  • سزار

    آفلاین
    عضو
    تعداد نوشته‌ها: ۶۷۸
    تشکر شده: ۱۱۸ بار
    # نوشته شده: ۱۲ سال پیش
    ۱ تیر ۱۳۸۸ - ۱۴:۱۸

    دقیقاً دوست من ;-]
    اما میخوام این صفحه در خود قالب لود بشه منظورم اینطوریه .
    اگه قالب سایت از بخش های زیر تشکیل شده است .
    1-header
    2-main
    3-sidbar
    4-footer
    من میخوام همون صفحه وبی که شما میگید در main لود بشه .
    مثلا اگر لینک مطلب به این صورت باشد :

    http://www.3zar.com/wp-contact/theme/3zar/love/index.php

    میخوام این صفحه رو طوری اینکلود بکنم همراه با سایدار و فوتر و هیدر باشه .
    من خودم کردم اما errooooooor میده.
    امیدوارم بتونید منو راهنمایی کنید .

    شادی از آن لحظه های شما. @},- ~O)

  • Morteza

    آفلاین
    ناظم
    تعداد نوشته‌ها: ۳۴۰۲
    تشکر شده: ۳۱۲۸ بار
    # نوشته شده: ۱۲ سال پیش
    ۱ تیر ۱۳۸۸ - ۱۷:۵۸

    یعنی اینکلود یک فایل اضافه به قالب؟

    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    alips
  • سزار

    آفلاین
    عضو
    تعداد نوشته‌ها: ۶۷۸
    تشکر شده: ۱۱۸ بار
    # نوشته شده: ۱۲ سال پیش
    ۱ تیر ۱۳۸۸ - ۲۰:۴۲

    مرتضی جان سلام ... ;-]

    نمیدونم چه طور توضیح بدم .
    میخوام یه برگه تعریف بکنم و در اون یه کد رو به فایل php رو لینک بدم تا بره و اونو تو اون برگه نمایش بده.

    عمل اینکلود کردن تو صفحه index به راحتی انجام میشه اما وقتی یک فایل دیگه از Index تولید میکنیم و محتویات main اونو تغییر میدیم که مثلا بره یه فایل رو اونجا نمایش بده باپیغام خطا روبرو میشیم.

    ممنون میشم کمکم کنید. @},- ~O)

  • Morteza

    آفلاین
    ناظم
    تعداد نوشته‌ها: ۳۴۰۲
    تشکر شده: ۳۱۲۸ بار
    # نوشته شده: ۱۲ سال پیش
    ۲ تیر ۱۳۸۸ - ۰۹:۵۷

    یعنی یه فایل با محتویات جدا ولی با هدر و فوتر قالب؟

  • سزار

    آفلاین
    عضو
    تعداد نوشته‌ها: ۶۷۸
    تشکر شده: ۱۱۸ بار
    # نوشته شده: ۱۲ سال پیش
    ۲ تیر ۱۳۸۸ - ۱۱:۳۶

    دقیقا مرتضی جان ;-].... به قول بچه های باچه نار ایول دارین. @},- ~O)

    می تونید کمک کنید.

  • Morteza

    آفلاین
    ناظم
    تعداد نوشته‌ها: ۳۴۰۲
    تشکر شده: ۳۱۲۸ بار
    # نوشته شده: ۱۲ سال پیش
    ۳ تیر ۱۳۸۸ - ۱۱:۱۱

    من 100% متوجه منظوت نشدم ولی ببین این راه بدردت میخوره؟

    اول اینکه میدونیم که میشه برای page ها به تعداد دلخواه قالب ایجاد کرد. به اینصورت که کد زیر رو در اول قالب با نام دلخواه قرار میدیم.

    <?php
    /* Template Name: customPage */
    ?>

    بعد هم در موقع پابلیش برگه اسم قالب رو وارد میکنیم.
    بنابراین میتونی توی قالب برگه دلخواه هر کدی رو که دوست داری با هدر و فوتر قالبت نمایش بدی.

    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    alips
  • سزار

    آفلاین
    عضو
    تعداد نوشته‌ها: ۶۷۸
    تشکر شده: ۱۱۸ بار
    # نوشته شده: ۱۲ سال پیش
    ۳ تیر ۱۳۸۸ - ۱۲:۰۳

    سلام مرتضی جان و تشکر از کمکتون ;-]
    بزار یه جور دیگه بگم ...

    قالب سایت من به خاطر محتوا و کویری های زیاد اون از یک فایل index.php و home.php استفاده میکنه .
    فایل home.php فایل اصلی من است .
    محتوای مطالب در index.php نمایش داده می شود .

    حالا من میخوام به طور مثال فال حافظ رو تو یک برگه مثل تماس با ما تعریف کنم .
    پس اومدم فایل از index.php یک کپی گرفتم و در شاخه اصلی قالب گذاشتم و اون رو ویرایش کردم و در بخش main اون به جای نمایش محتوا مطلب از دستور فراخوانی زیر استفاده کردم اما خطا میده.

    include(TEMPLATEPATH . '/fal/hafez.php');

    دیگه نمیدونم چطور بگم .
    من تستش کردم و از دستور فراخوانی فایل استفاده می کنم اما با errooooor مواجه میشم و حال منو بد جوری گرفته .

    ممنون از کمکتون. @},- ~O)

  • websoft

    آفلاین
    عضو
    تعداد نوشته‌ها: ۲۳۴
    تشکر شده: ۴۹ بار
    # نوشته شده: ۱۲ سال پیش
    ۳ تیر ۱۳۸۸ - ۱۳:۰۳

    يه امتحان كن :

    <?php include_once('Your Path Here'); ?>
    <?php require("Path here"); ?>
    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    alips
  • سزار

    آفلاین
    عضو
    تعداد نوشته‌ها: ۶۷۸
    تشکر شده: ۱۱۸ بار
    # نوشته شده: ۱۲ سال پیش
    ۳ تیر ۱۳۸۸ - ۱۶:۵۱

    محد جان تشکر از راهنماییتون ... ;-]

    اما با قبل هیچ فرقی نکرده و همش این پیغام رو میده : مخم ترکید :O

    Fatal error: Call to undefined function get_header() in C:\xampp\htdocs\wp\wp-content\themes\3zar-portal\fal.php on line 1

    تو line 1 این کد رو دارم :

    <?php get_header(); ?>

    شاید اصلا راه رو اشتباه میرم که شک دارم اینطوری باشه اما میشه مراحل کار رو بگید و یا اینکه یه نمونه رو توضیح بدین.
    لازم به ذکر من این صفحه ای که میخوام بسازم نمیخواممثل یک برگه که هر بار سایت لود میشه و یا قالب رو عوض میکنم در قسمت برگه ها نمایش داده بشه . بلکه میخوام به واسطه لینکی که بهش میدم باز بشه .

    آیا من باید برم و صفحه مورد نظرم رو مثل صفحات Page . tag . index. .... تو هسته مرکزی وردپرس تعریف کنم .
    خل شدم مثل اینکه . چرا آخه اینطوری میشه .

    ممنون میشم راهنمایی کنید . @},- ~O)

  • عقیق

    آفلاین
    عضو
    تعداد نوشته‌ها: ۱۵۳
    تشکر شده: ۱۰ بار
    # نوشته شده: ۱۲ سال پیش
    ۳ تیر ۱۳۸۸ - ۱۷:۲۳

    ببین اینکار رو هم بکن ضرر نداره
    تو روت که وردپرس رو نصب کردی یه صفحه درست کن و کد زیر رو در بالای صفحه بزار.

    <?php
    require('./wp-blog-header.php');
    ?>

    و بعد ساید بار و هدر و فاتر و اون صفحه ای رو که میخوای تو اون صفحه اینکلود کن اینم بگم که این کدی که من دادم فقط تو روت وردپرس جواب میده.

  • سزار

    آفلاین
    عضو
    تعداد نوشته‌ها: ۶۷۸
    تشکر شده: ۱۱۸ بار
    # نوشته شده: ۱۲ سال پیش
    ۳ تیر ۱۳۸۸ - ۱۸:۰۲

    yahooirani گفت:
    ببین اینکار رو هم بکن ضرر نداره
    تو روت که وردپرس رو نصب کردی یه صفحه درست کن و کد زیر رو در بالای صفحه بزار.

    <?php
    require('./wp-blog-header.php');
    ?>

    و بعد ساید بار و هدر و فاتر و اون صفحه ای رو که میخوای تو اون صفحه اینکلود کن اینم بگم که این کدی که من دادم فقط تو روت وردپرس جواب میده.

    تشکر دوست من ....
    بله به قول خودتون در روت اصلی کار میکنه و جواب هم داد.
    اما من نزدیک 50 مگا بایت رو جابجا کنم و کلی مسایل دیگه . نمیشه تو همون شاخه قالب یه کاریش کرد.

    شاد باشید.

  • امین / iishtar

    آفلاین
    عضو
    تعداد نوشته‌ها: ۵۴۲
    تشکر شده: ۴۴ بار
    # نوشته شده: ۱۲ سال پیش
    ۳ تیر ۱۳۸۸ - ۱۹:۴۶

    3zar گفت:
    محد جان تشکر از راهنماییتون ... ;-]
    اما با قبل هیچ فرقی نکرده و همش این پیغام رو میده : مخم ترکید :O

    Fatal error: Call to undefined function get_header() in C:\xampp\htdocs\wp\wp-content\themes\3zar-portal\fal.php on line 1

    تو line 1 این کد رو دارم :

    <?php get_header(); ?>

    شاید اصلا راه رو اشتباه میرم که شک دارم اینطوری باشه اما میشه مراحل کار رو بگید و یا اینکه یه نمونه رو توضیح بدین.
    لازم به ذکر من این صفحه ای که میخوام بسازم نمیخواممثل یک برگه که هر بار سایت لود میشه و یا قالب رو عوض میکنم در قسمت برگه ها نمایش داده بشه . بلکه میخوام به واسطه لینکی که بهش میدم باز بشه .
    آیا من باید برم و صفحه مورد نظرم رو مثل صفحات Page . tag . index. .... تو هسته مرکزی وردپرس تعریف کنم .
    خل شدم مثل اینکه . چرا آخه اینطوری میشه .
    ممنون میشم راهنمایی کنید . @},- ~O)

    به نظرتون مشکل استفاده از تابع های وردپرس مثل get_header() در خارج از وردپرس نیست ؟

  • websoft

    آفلاین
    عضو
    تعداد نوشته‌ها: ۲۳۴
    تشکر شده: ۴۹ بار
    # نوشته شده: ۱۲ سال پیش
    ۳ تیر ۱۳۸۸ - ۱۹:۵۲

    بله ... خطايي كه ميداد رو از اول درج مي كرديد ... اول فانكشن رو جدا تو فايلتون تعريف كنيد اگه دوباره مشكلي پيش نياد.

  • سزار

    آفلاین
    عضو
    تعداد نوشته‌ها: ۶۷۸
    تشکر شده: ۱۱۸ بار
    # نوشته شده: ۱۲ سال پیش
    ۳ تیر ۱۳۸۸ - ۲۰:۴۲

    بله دقیقا من نیز خیلی با هیدر سر و کله زدم اما نشد .
    محمد جان منظورتون این کد بود ؟

    <?php
    /**
     * Loads the WordPress environment and template.
     *
     * @package WordPress
     */
    
    if ( !isset($wp_did_header) ) {
    
    	$wp_did_header = true;
    
    	require_once( dirname(__FILE__) . '/wp-load.php' );
    
    	wp();
    
    	require_once( ABSPATH . WPINC . '/template-loader.php' );
    
    }
    
    ?>

    اگه نه منظورتون رو بگید ببینم مشکلم کجاست .
    تشکر از کمک هاتون. @},- ~O)

    شادی باشید.

درباره‌ی این موضوع



برچسب‌ها