eepersian

جلوگیری در بارگذاری Header و Footer پوسته توسط Shortcode

3 پست در این موضوع قرار دارد

با سلام به دوستان

در حالت عادی وردپرس داریم :

وقتی یک Template سفارشی می سازیم می توانیم Header و Footer دلخواه خود را بر روی آن اعمال کنیم . یعنی می توانیم یک قالب کاملا متفاوت از پوسته را با یک Template ایجاد کنیم .

وقتی یک Shortcode را در یک برگه یا نوشته استفاده می کنیم Header و Footer پوسته بارگذاری می شوند ، چون Shortcode در بدنه صفحه است .

حالا مشکل من :

یک Template دارم که دارای قالبی کاملاً متفاوت با پوسته هست (یعنی فایل های Header و Footer اون اختصاصی هستن) و در بدنه ی اون یک دستور Select از جدول گروه محصولات دارم

مثلاً :


SELECT * FROM groups

حالا می خوام یک قسمت Where با محتوای کد گروه های مورد نظرم ، به دستور SELECT بالا در Template اضافه کنم که فقط گروه هایی رو که می خوام انتخاب کنه . مثل کد زیر :


SELECT * FROM groups WHERE group_id=1

یعنی کلاً می خوام Template ام رو داینامیک کنم .

حالاً چیزی که به ذهن خودم رسید استفاده از Shortcode بود به صورت زیر :

همه دستورات موجود در Template رو (بجز اون تعریف template) داخل تابع مرتبط با shortcode قرار بدم و به shortcode کد گروه ها رو به صورت پارامتر ارسال کنم .

یعنی اینطوری :


[show_group id="1,2"]

و با دستورات پی اچ پی کد های پارامتر id از شورت کد رو داخل قسمت Where قرار بدن تا نتیجه چیزی مثل زیر بشه :


SELECT * FROM groups WHERE group_id=1 or Group_id=2

این کار رو هم انجام دادم - یعنی شورت کد کار می کنه

تنها مشکلم اینه که وقتی شورت کد رو داخل برگه یا نوشته می زارم Header و Footer پوسته بارگذاری می شن و داخل اون باکس یا جعبه برگه یا نوشته کدهای شورت کد اجرا میشن (کلاً میشه تو در تو)

من می خوام Header و Footer پوسته بارگذاری نشه و اون Header وFooter که داخل تابع shortcode هستن اجرا بشن

ممنون میشم دوستان راهنمایی کنن

اگر کسی راه حل بهتری به ذهنش می رسه ، مطرح کنه ممنون میشم

با تشکر فـــــــراوان

0

به اشتراک گذاری این پست


لینک به پست

header و footer داخل جعبه شورت کد نمی تونند اجرا باشند محتویات این جعبه الزاما در داخل حلقه قرار دارند ولی من نفهمیدم کاری که توضیح دادید به header footer چه ربطی داشت page template در هر حال داینامیکه و از هسته مرکزی وردپرس نیرو می گیره

تابع های


<?php wp_head();?>
<?php wp_footer();?>

را در محلهاشون بگذارید همه چیز درست کار خواهد کرد

برای اینکه select شما با گروه های دلخواهتون ساخته بشه بهترین راه استفاده از متد GET است


<?php if(isset($_GET['group'])) {
$group = $_GET['group'];
}
else {
$group = 5;
}
SELECT * FROM groups WHERE group_id=$group;
?>

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


?group=5

به انتهای نشانیش صفحه را برای گروه 5 لود می کنید و با عوض کردن عدد همون صفحه رو برای گروه های دیگر

تذکر: لطف کنید تایپیک هاتون رو از طریق پیام خصوصی پیگیری نکنید ممنون می شم، 24 ساعت زمان انتظاره و بعدش هم تایپیک را می توانید up بفرمایید.

1

به اشتراک گذاری این پست


لینک به پست

من نفهمیدم کاری که توضیح دادید به header footer چه ربطی داشت

...

تذکر: لطف کنید تایپیک هاتون رو از طریق پیام خصوصی پیگیری نکنید ممنون می شم، 24 ساعت زمان انتظاره و بعدش هم تایپیک را می توانید up بفرمایید.

امکان استفاده از GET و POST مقدور نیست - چون اینها مستلزم این هستن که یا لینکی وجود داشته باشه یا فرمی

مثلاً ممکنه اون صفحه که از Template استفاده می کنه روی صفحه اصلی سایت تنظیم بشه

اما ربط Header و Footer :

اگر کدهای Template رو در شورت کد بنویسم خوب اول قالب صفحه لود میشه و بعدش Header وFooter داخل شورت کد ... من تست کردم و یک شکل تو در تو ایجاد شد

نمی دونم چطوری بیان کنم

اگر امکان داشته باشه یه شماره تماس بدی ممنون میشم

در مورد پیام خصوصی هم چشم - تکرار نمیشه

0

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط nnmmss
      سلام
      من كاملا در وردپرس تازه كار هستم. سايتي با پوسته RealNews طراحي شده. منوهايي دارم كه داراي منو و زير منو هستند. وقتي يك نوشته را به زير منو اختصاص ميدم بعد روي منو ميروم كليه نوشته هاي زير منو را هم نشان ميدهد. مثلا من به اين صورت است
      منو1
      زيرمنو 1-1
      زير منو1-2
       
      من اگر روي زير منو 1-1 كليك كنم فقط نوشته هاي زير منو 1-1 را نشان ميده ولي وقتي روي منو1 كليك كنم تمام نوشته هاي منو1   ,    زيرمنو1-1 و زيرمنو1-2 را نشان ميدهد. چطور ميتوانم اين موضوع را تصحيح كنم كه با كليك كردن روي منو1 فقط نوشته مربوط به منو1 را نشان دهد
    • توسط rendesharif
      با سلام 
      24 ساعت پیش در حال آپدیت تب های وبسایت بودم که اینترنت قطع شد و هنگامی که سعی کردم دوباره وارد کنترل پنل بشم دیدم صفحات ساختار خودشون رو از دست دادن و به نحوی بصورت لایت بارگزاری میشن برای حل این مشکل چیکار میتونم بکنم آیا راه حلی هست.
      تصویر قسمت لاگین هم اضافه کردم میتونید ببینید که دیگه خبری از ساختار اصلی نیست در مابقی صفحات کنترل پنل هم به همین شکل هست

    • توسط naff
      سلام.
      من  میخوام یه صفحه ی استاتیک رو روی ftp  آپلود کنم به عنوان  index اصلی و بعد از کلیک روی دکمه ی مورد نظر کاربر منتقل بشه به سایت اصلی یا همون قالب وردپرس.
       مشکل اینجاست که وقتی صفحه ی  html  رو روی  ftp  آپلود میکنم سایت فقط این صفحه رو به عنوان  index  میشناسه و  این رو جایگزین  index وردپرس میکنه و این صفحه  رو  front page  میشناسه.
       در صورتی که من هر دوتاش رو  میخوام . و صفحه ی html  رو به عنوان  index  میخوام یعنی با وارد کردن اسم سایت اسن صفحه ظاهر بشه.
      صفحه ی اچ دی ام ال:
      https://altourneur.com/new.html
       صفحه ی اصلی سایت:
      https://altourneur.com

       
    • توسط Streetlife
      سلام کارشناسان عزیز و محترم
      دوستان چند روزه هرچی میگردم هیچ چیز مناسبی رو پیدا نمیکنم لطفا کمک بفرمایید.من یک طراح ورد پرسم و میخام واسه یک سایت که بلاگ وردپرس و فروشگاه پرستا شاپ هستش به صورت پاپ اپ یک نظرسنجی رو طراحی کنم که یه سوالی بپرسه و جواب رو بازدیدکننده ها تایپ کنن اما به این صورت که لایو سرچ باشه این فیلد یعنی از بین محصولات که روی دیتا بیس هستند با تایپ یک یا چند حرف ساجست بده لطفااااااااااا راهنمایی بفرمایید
    • توسط amirhosseinganjeh
      سلام دوستان نمیدونم چیکار کردم که عنوان صفحه رو نمایش میده توی همه صفحه ها
      این قسمت ابی رنگو توی عکس اول رو میگم

      تونستم توی صفحاتی که ویرایشگرشون بازه، نمایش عنوان صفحه رو خاموش کنم ولی توی صفحه فروشگاهم نمیتونم نمایشش رو خاموش کنم
       خاموشش هم میکنم باز هم نمایش میده(عکس دوم)
      اگه راه حلی دارید بفرمایید لطفا..