رفتن به مطلب

سربرگ و پس زمینه


پست های پیشنهاد شده

سلام.من با نوشتن چه کدهای می توانم خاصیت سربرگ و پس زمینه را به قالبم اضافه کنم و پس از اضافه کردن آن کدها در functions.php چه کدهایی را باید در header.php بزنم تا آن ها را دریافت کند؟منظورم این است که ما اگر از طریق کدی که در functions.php زده ایم خاصیت سریرگ را فعال کرده باشیم چه جوری کاری کنیم که با کدی که در header.php می زنیم کاری کنیم که کاربر بتواند سربرگ و پس زمینه را تغییر دهد؟لطفا هم کدهای functions.php و هم کدهای header.php را توضیح دهید و بگویید چگونه می توان سایزی به صورت کد به سربرگ داد تا کاربر نتواند اندازه سربرگ را تغییر دهد؟من وقتی به سربرگ در یک قالبی که سربرگ داشت یک عکس دادم آن عکس رفت زیر div ها همان عکس را هم داخل div گذاشتم ولی درست نشد لطفا این را هم توضیح دهید.خیلی ممنون.

لینک به ارسال

سلام. دوست عزیز این شیوه ی سوال پرسیدن خیلی بد هست ، چند تا نکته رو در نظر داشته باشید بعد سوال بپرسید:

1 - حتی الامکان 1 یا 2 سوال مطرح کنید

2 - سوالاتتون رو واضح بیان کنید و توضیحی که می نویسید اگر امکان داره کدی هم بزارید ، اینطوری هیچ کس تمایلی پیدا نمی کند که جوابتون رو بده.

3 - سوال کلی نپرسید ، سعی کنید سوالاتتون موردی باشه ، چون فکر نمیکنم بخش مشکلات جای خوبی برای درخواست آموزش باشه.

4 - قبل از پرسیدن سوال کمی در نت جستجو کنید. توی همین سایت های فارسی زبان هم به جواب خیلی از سوالاتتون می رسید.

اما کمی هم جواب :

برای اون بخش اول سوالاتتون درست متوجه نمیشم چی میخواید بدونید ، اما توی وردپرس فایل header.php کار خاصی نمیکند و شما میتونید اصلا از اون استفاده نکنید و همه چیز رو توی ایندکس قرار بدید . و در عوض توابع هستن که همه چیز رو فراهم می کنند. مثلا با تابع wp_head هر چیزی که وردپرس قصد دارد در تگ هد قرار بدهد را فراخوانی می کنیم ، پس این تابع رو در تگ هد فراخوانی می کنیم. حالا شما فرضا می خواهید کد خاصی رو در قسمت سربرگ قالبتون قرار بدید برای این کار در فایل فانکشن یک تابع ایجاد می کنید و اطلاعاتی رو در اون قرار می دهید و در فایل ایندکس یا هدر یا سینگل یا هر فایلی که برای نمایش محتوا به کاربران به کار میره فراخوانی می کنید (فایل functions برای نمایش محتوا نیست، یک جور پل ارتباطی بین پوسته و هسته ی وردپرس است ). حالا شما می خواهید کاری کنید که کاربر بتواند بخش خاصی رو از طریق منو به راحتی تغییر بدهد برای این کار یک تابع جدید به وردپرس اضافه می کنید (در فایل فانکشن) و اون رو در سیستم مدیریت وردپرس هم به نمایش می گذارید و تغییرات ایجاد شده رو در دیتابیس وردپرس ، ذخیره می کنید و در نهایت با فراخوانی اون تابع مقدار بازگشتیش رو توی پوسته نمایش می دهید. حالا می خواهد سربرگ باشد یا هر جای دیگه ای در پوستتون . (خودم نفهمیدم چی شد امیدوارم منظورمو فهمیده باشید :))

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

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

برای قسمت دوم سوالتون احتمالا تگ های div دیگه یا داخل تگ div اولتون بوده اند یا اینکه توسط z-index در css تگ div ای که عکس رو در اون قرار دادید به لایه های عقبی منتقل شده.

موفق باشید.

لینک به ارسال

سلام.من با نوشتن چه کدهای می توانم خاصیت سربرگ و پس زمینه را به قالبم اضافه کنم و پس از اضافه کردن آن کدها در functions.php چه کدهایی را باید در header.php بزنم تا آن ها را دریافت کند؟منظورم این است که ما اگر از طریق کدی که در functions.php زده ایم خاصیت سریرگ را فعال کرده باشیم چه جوری کاری کنیم که با کدی که در header.php می زنیم کاری کنیم که کاربر بتواند سربرگ و پس زمینه را تغییر دهد؟لطفا هم کدهای functions.php و هم کدهای header.php را توضیح دهید و بگویید چگونه می توان سایزی به صورت کد به سربرگ داد تا کاربر نتواند اندازه سربرگ را تغییر دهد؟من وقتی به سربرگ در یک قالبی که سربرگ داشت یک عکس دادم آن عکس رفت زیر div ها همان عکس را هم داخل div گذاشتم ولی درست نشد لطفا این را هم توضیح دهید.خیلی ممنون.

با عرض سلام و احترام

اگر منظورتون اینه که می خواید یک پنل تنظیمات برای قالب ایجاد کنید. که به مدیر سایت این امکان رو بدید از داخل این پنل عکس هدر رو عوض کنه.

شما باید کد زیر رو به فایل functions.php اضافه کنید.


<?php
/*
start global options
*/
$themename="2sweb.ir";
$shortname="tsweb";
$options=array(
array(name=>"تنظیمات ویژه", type=>"title"),
array( "type" => "open"),
array( "name" => "هدر-> عکس هدر",
"desc" => "آدرس عکس آپلود شده را که می خواهید در پس زمینه هدر نمایش داده شود اینجا وارد نمایید.( اندازه عکس به طول 988 و عرض آن 177 باشد ). و اگر می خواهید عکس پیش فرض نمایش داده شود کادر را خالی بگذارید.",
"std" => "",
"id" => $shortname."_header",
"type" => "text"),

array( "type" => "close"),
);

?>
<?php
function mytheme_add_admin() {
global $themename, $shortname, $options;
if ( $_GET['page'] == basename(__FILE__) ) {
if ( 'save' == $_REQUEST['action'] ) {
foreach ($options as $value) {
update_option( $value['id'], $_REQUEST[ $value['id'] ] ); }
foreach ($options as $value) {
if( isset( $_REQUEST[ $value['id'] ] ) ) { update_option( $value['id'], $_REQUEST[ $value['id'] ] ); } else { delete_option( $value['id'] ); } }
header("Location: themes.php?page=functions.php&saved=true");
die;
} else if( 'reset' == $_REQUEST['action'] ) {
foreach ($options as $value) {
delete_option( $value['id'] ); }
header("Location: themes.php?page=functions.php&reset=true");
die;
}
}
add_theme_page($themename." Options", "".$themename." Options", 'edit_themes', basename(__FILE__), 'mytheme_admin');
}
function mytheme_admin() {
global $themename, $shortname, $options;
if ( $_REQUEST['saved'] ) echo '<div id="message" class="updated fade"><p>تنظیمات جدید ذخیره شد.</p></div>';
if ( $_REQUEST['reset'] ) echo '<div id="message" class="updated fade"><p>تنظیمات به حالت اولیه بازگردانده شد.</p></div>';
?>
<div class="wrap">
<h2>تنظیمات ویژه قالب</h2>
<form method="post">
<?php foreach ($options as $value) {
/*
Next is the code which tells WordPress how to display the ‘type’ of option used (title, open, close, text, textarea, checkbox etc.)
*/
switch ( $value['type'] ) {
case "open":
?>
<table width="100%" border="0" style="background-color:#eef5fb; padding:10px;">
<?php break;
case "close":
?>
</table><br />
<?php break;
case "title":
?>
<table width="100%" border="0" style="background-color:#dceefc; padding:5px 10px;"><tr>
<td colspan="2"><h3 style="font-family:'b koodak', 'koodak', 'b mitra', arial;"><?php echo $value['name']; ?></h3></td>
</tr>
<?php break;
case 'text':
?>
<tr>
<td width="20%" rowspan="2" valign="middle"><strong><?php echo $value['name']; ?></strong></td>
<td width="80%"><input style="width:400px;" name="<?php echo $value['id']; ?>" id="<?php echo $value['id']; ?>" type="<?php echo $value['type']; ?>" value="<?php if ( get_settings( $value['id'] ) != "") { echo stripslashes(htmlspecialchars(get_settings( $value['id']))); } else { echo $value['std']; } ?>" /></td>
</tr>
<tr>
<td><small><?php echo $value['desc']; ?></small></td>
</tr><tr><td colspan="2" style="margin-bottom:5px;border-bottom:1px dotted #000000;"> </td></tr><tr><td colspan="2"> </td></tr>
<?php
break;
case 'textarea':
?>
<tr>
<td width="20%" rowspan="2" valign="middle"><strong><?php echo $value['name']; ?></strong></td>
<td width="80%"><textarea name="<?php echo $value['id']; ?>" style="width:400px; height:200px;" type="<?php echo $value['type']; ?>" cols="" rows=""><?php if ( get_settings( $value['id'] ) != "") { echo stripslashes(htmlspecialchars(get_settings( $value['id']))); } else { echo $value['std']; } ?></textarea></td>
</tr>
<tr>
<td><small><?php echo $value['desc']; ?></small></td>
</tr><tr><td colspan="2" style="margin-bottom:5px;border-bottom:1px dotted #000000;"> </td></tr><tr><td colspan="2"> </td></tr>
<?php
break;
case 'select':
?>
<tr>
<td width="20%" rowspan="2" valign="middle"><strong><?php echo $value['name']; ?></strong></td>
<td width="80%"><select style="width:240px;" name="<?php echo $value['id']; ?>" id="<?php echo $value['id']; ?>"><?php foreach ($value['options'] as $option) { ?><option<?php if ( get_settings( $value['id'] ) == $option) { echo ' selected="selected"'; } elseif ($option == $value['std']) { echo ' selected="selected"'; } ?>><?php echo $option; ?></option><?php } ?></select></td>
</tr>
<tr>
<td><small><?php echo $value['desc']; ?></small></td>
</tr><tr><td colspan="2" style="margin-bottom:5px;border-bottom:1px dotted #000000;"> </td></tr><tr><td colspan="2"> </td></tr>
<?php
break;
case "checkbox":
?>
<tr>
<td width="20%" rowspan="2" valign="middle"><strong><?php echo $value['name']; ?></strong></td>
<td width="80%"><? if(get_settings($value['id'])){ $checked = "checked=\"checked\""; }else{ $checked = ""; } ?>
<input type="checkbox" name="<?php echo $value['id']; ?>" id="<?php echo $value['id']; ?>" value="true" <?php echo $checked; ?> />
</td>
</tr>
<tr>
<td><small><?php echo $value['desc']; ?></small></td>
</tr><tr><td colspan="2" style="margin-bottom:5px;border-bottom:1px dotted #000000;"> </td></tr><tr><td colspan="2"> </td></tr>
<?php
break;
}
}
?>
<?php
/*Basically, if the ‘type’ is text, we display a textbox with the title and desc tags next to it. The same goes for each of the others.
Note that we are using tables and inline-styling. Seriously, repent your sins
Next is the final piece of code for the options page. It displays ‘Submit’ and ‘Reset’ buttons. At the end is the final code to tell WordPress to add this as a page in the Admin Dashboard.
*/
?>
<p class="submit">
<input name="save" type="submit" value="ذخیره تنظیمات" />
<input type="hidden" name="action" value="save" />
</p>
</form>
<form method="post">
<p class="submit">
<input name="reset" type="submit" value="بازگردانی تنظیمات به حالت اولیه" />
<input type="hidden" name="action" value="reset" />
</p>
</form>
<?php
}
add_action('admin_menu', 'mytheme_add_admin');
?>

و در فایل header.php هم کدهای زیر رو قرار بدید.


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fa-IR" dir="rtl">
<?php
global $options;
foreach ($options as $value) {
if (get_settings( $value['id'] ) === FALSE) { $$value['id'] = $value['std']; } else { $$value['id'] = get_settings( $value['id'] ); }
}
?>
<head>
.
.
.
</head>
<body>
<div <?php
if($tsweb_header!=""):
echo 'style="background-image:url('.$tsweb_header.');"';
endif; ?> id="header">
</div>
<!--#header-->
.
.
.
</body>
</html>

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...