webbarg

ساخت خودکار برگه جدید

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

سلام خدمت تمامی دوستان و عزیزان و بزرگواران و اساتید گرامی ...

یه سوال خیلی خیلی تخصصی داشتم .

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

می خواستم بدونم چی جوری میشه این کار را کرد ، که زمانی که قالب فعال میشه 2 برگه ساخته بشه حالا یا محتوا توش قرار بگیره و یا این که قالبی که درست کردیم بهش اضافه بشه ...

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


لینک به پست

برای ایجاد برگه دیفالت در زمان فعال سازی پلاگین در تاپیک دیگری ارائه دادم (جستجو کنید)

اما برای ایجاد برگه دیفالت در زمان فعال سازی پوسته:

به فایل فانکشن اضافه کنید:


if (isset($_GET['activated']) && is_admin()){
$page_title = 'اینجا نام برگه را وارد کنید';
$page_content = 'اینجا متن برگه و یا شورتکد را وارد نمایید';
$page_template = 'نام تمپلیت را اینجا بنویسید و اگر از قالب پیشفرض برگه ها استفاده می کنید اینجا را خالی بگذارید';
$page_triger = get_page_by_title(page_title);
$new_page = array(
'post_type' => 'page',
'post_title' => $page_title,
'post_content' => $page_content,
'post_status' => 'publish',
);
if(!isset($page_triger->ID)){
$page_id = wp_insert_post($new_page);
if(!empty($page_template)){
update_post_meta($page_id, '_wp_page_template', $page_template);
}
}
}

ویرایش شده در توسط isk

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


لینک به پست

اگه 2 یا 3 تا برگه بخوام بسازم هم این کد را چند 2_3 بار کپی کنم دیگه >>

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


لینک به پست

بله هر سری باید برای هر برگه کدش تکرار بشه

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


لینک به پست

یه سوال دیگه :

میشه بهش آدرس هم داد ؟

به عنوان مثل این صفحه ای که می سازه ادرس contact باشه .

یعنی بشه www.sait.com/contact

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


لینک به پست

خاصیت post_name

http://codex.wordpress.org/Function_Reference/wp_insert_post

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


لینک به پست

سلام

سوالم دقیقا در همین مورد هست. به همین دلیل تاپیک نزدم

یه اقزونه نوشتم که یه برگه به سایت اضافه میکنه خودش! با استفاده از wp_insert_post

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

طوری باشه که اگه پیوند یکتا عددی بود، به همون صورت لینک رو نمایش بده. و اگه پیوند یکتا بصورت نام نوشته بود هم بصورت slug یا نامک نمایش بده لینک رو .

چند مورد توی سایتهای انگلیسی و خود سایت وردپرس راه حل بود که جوب نداد .

باید از چه کدی استفاده کنم؟

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


لینک به پست

نه

اینجا یه برگه با هر محتوایی می تونید در پنل ادمین بسازید

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


لینک به پست

سلام

سوالم دقیقا در همین مورد هست. به همین دلیل تاپیک نزدم

یه اقزونه نوشتم که یه برگه به سایت اضافه میکنه خودش! با استفاده از wp_insert_post

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

طوری باشه که اگه پیوند یکتا عددی بود، به همون صورت لینک رو نمایش بده. و اگه پیوند یکتا بصورت نام نوشته بود هم بصورت slug یا نامک نمایش بده لینک رو .

چند مورد توی سایتهای انگلیسی و خود سایت وردپرس راه حل بود که جوب نداد .

باید از چه کدی استفاده کنم؟

شما باید ID برگه ساخته‌شده رو به هر نحوی که خودتون میدونید ذخیره کنید (مثلاً از طریق Options API) و بعد با استفاده از فانکشن get_permalink لینک رو به دست بیارید. براتون یه مثل زدم:


$args = array(
// your post args
);
$pageID = wp_insert_post( $args );

if ( $pageID ) {
$permalink = get_permalink( $pageID );
echo $permalink;
} else {
echo 'Page have not created';
}

راهنمایی بیشتری خواستید، در خدمتم.

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


لینک به پست

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

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

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

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


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

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

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


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