رفتن به مطلب

تغییر اجزای نظر


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

سلام دوستان من میخواستم بدونم چه جوری میشه اجزای نظر رو تغییر داد؟ مثلا یک استایل خاص رو فقط به متن نظر نسبت داد و یک استایل دیگه برای تاریخ نظر در نظر گرفت و یکی برای نام نویسنده و ...

چون من هر چی توی فایل کامنت گشتم چیزی متوجه نشدم مثل اینکه کل نظر (نویسنده و متن نظر و تاریخ و آواتار) فقط با یک تابع فراخوانی میشه

ممنون میشم راهنمایی بفرمایید

این هم محتوای فایل comments.php هست


<?php
// Do not delete these lines
if (!empty($_SERVER['SCRIPT_FILENAME']) && 'comments.php' == basename($_SERVER['SCRIPT_FILENAME']))
die ('Please do not load this page directly. Thanks!');
if ( post_password_required() ) { ?>
<p class="nocomments">This post is password protected. Enter the password to view comments.</p>
<?php
return;
}
?>
<!-- You can start editing here. -->
<?php if ( have_comments() ) : ?>
<h2 class="h2comments"><?php comments_number('بدون دیدگاه', '1 دیدگاه', '% دیدگاه' );?> <a href="#respond" class="addComment">+ فرستادن دیدگاه</a></h2>
<ul class="commentlist">
<?php wp_list_comments('callback=mytheme_comment'); ?>
</ul>
<?php else : // this is displayed if there are no comments so far ?>
<?php if ('open' == $post->comment_status) : ?>
<!-- If comments are open, but there are no comments. -->
<?php else : // comments are closed ?>
<!-- If comments are closed. -->
<p class="nocomments">دیدگاه ها بسته شده اند.</p>
<?php endif; ?>
<?php endif; ?>

<?php if ('open' == $post->comment_status) : ?>
<div id="respond">
<h2 id="commentsForm"><?php comment_form_title( 'فرستادن دیدگاه', 'فرستادن دیدگاه برای %s' ); ?></h2>
<div class="cancel-comment-reply">
<small><?php cancel_comment_reply_link(); ?></small>
</div>
<?php if ( get_option('comment_registration') && !$user_ID ) : ?>
<p>شما باید <a href="<?php echo get_option('siteurl'); ?>/wp-login.php?redirect_to=<?php echo urlencode(get_permalink()); ?>">وارد شوید</a> تا بتوانید دیدگاهی ارسال کنید.</p>
<?php else : ?>
<form action="<?php echo get_option('siteurl'); ?>/wp-comments-post.php" method="post" id="commentform">
<?php if ( $user_ID ) : ?>
<p>وارد شده با نام <a href="<?php echo get_option('siteurl'); ?>/wp-admin/profile.php"><?php echo $user_identity; ?></a>. <a href="<?php echo wp_logout_url(get_permalink()); ?>" title="Log out of this account">خروج »</a></p>
<?php else : ?>
<p><label for="author">نام <?php if ($req) echo "(لازم)"; ?></label>
<input type="text" name="author" id="author" value="<?php echo $comment_author; ?>" size="22" tabindex="1" <?php if ($req) echo "aria-required='true'"; ?> />
</p>
<p><label for="email">ایمیل (منتشر نخواهد شد) <?php if ($req) echo "(لازم)"; ?></label>
<input type="text" name="email" id="email" value="<?php echo $comment_author_email; ?>" size="22" tabindex="2" <?php if ($req) echo "aria-required='true'"; ?> />
</p>
<p><label for="url">وبسایت</label>
<input type="text" name="url" id="url" value="<?php echo $comment_author_url; ?>" size="22" tabindex="3" />
</p>
<?php endif; ?>
<!--<p><small><strong>XHTML:</strong> You can use these tags: <code><?php echo allowed_tags(); ?></code></small></p>-->
<p><label for="comment">دیدگاه</label>
<textarea name="comment" id="comment" cols="100%" rows="10" tabindex="4"></textarea></p>
<p><input name="submit" type="submit" id="submit" tabindex="5" value="فرستادن دیدگاه" />
<?php comment_id_fields(); ?>
</p>
<?php do_action('comment_form', $post->ID); ?>
</form>
<?php endif; // If registration required and not logged in ?>
</div>
<?php endif; // if you delete this the sky will fall on your head ?>

لینک به ارسال

کافیست کلاس/آی دی مورد نظر را در فایل style.css قالب خود فرا بخوانید و به آن استایل دهید.بهترین گزینه برای دریافت کلاس/آی دی بخش مورد نظر استفاده از افزونه firebug فایرفاکس می باشد...#

لینک به ارسال

تاریخ:


.comment-meta span {}

نام نظر دهنده:


.comment-meta strong a {}

متن نظر :


.text p {}

پاسخ :


.reply {}

و ...

ویرایش شده توسط oMid
لینک به ارسال

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

موفق باشی :)

لینک به ارسال

دوستان ممنون میشم کسی راهنماییم کنه که کلاس کل نظر (آواتار و دکمه پاسخ و متن و تاریخ باهم) چیه؟؟ چون میخوام یک خط دورش بندازم (دقیقا مثل همیار)

شرمنده ها چون خودم نتونستم با فایر باگ متوجه بشم

لینک به ارسال

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

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

موفق باشی :)

لینک به ارسال

خوب آقا پویا مشکل همینه دیگه

من اصلا نمیدونم این کلاس ها کجا تعریف شدن که خودم یک کلاس کلی واسش تعریف کنم

فایل کامنت رو که گذاشتم اصلا هیچ کدوم از این اجزا توش نیستن

کدوم فایل رو باید دنبال این کدها بگردم؟؟

لینک به ارسال

دوستان شرمنده خودم حلش کردم کد ها توی فانکشن بودن الان فقط یک مشکل دیگه هست اون هم اینکه آواتار توی اون حاشیه نمیاد با اینکه div رو قبل از کد فراخوانی آواتار ایجاد کردم

http://shouremahour.ir/?p=1

این هم کدهای بخش کامنت در فانکشن هست


/*******************************
CUSTOM COMMENTS
********************************/
function mytheme_comment($comment, $args, $depth) {
$GLOBALS['comment'] = $comment; ?>
<li class="<?php
/* Only use the adminComment class from style.css if the user_id is 1 (admin) */
if (1 == $comment->user_id)
$oddcomment = "adminComment";
echo $oddcomment;
?>" id="comment-<?php comment_ID() ?>">
<div class="total-comment">
<?php echo get_avatar($comment,$size='38',$default='http://www.gravatar.com/avatar/61a58ec1c1fba116f8424035089b7c71?s=32&d=&r=G' ); ?>
<div id="comment-<?php comment_ID(); ?>">
<div class="comment-meta commentmetadata clearfix">
<?php printf(__('<strong>%s</strong>'), get_comment_author_link()) ?><?php edit_comment_link(__('(Edit)'),' ','') ?> <span><?php printf(__('%1$s at %2$s'), get_comment_date(), get_comment_time()) ?>
</span>
</div>

<div class="text">
<?php comment_text() ?>
</div>

<?php if ($comment->comment_approved == '0') : ?>
<em><?php _e('دیدگاه شما در دست بررسی است.') ?></em>
<br />
<?php endif; ?>
<div class="reply">
<?php comment_reply_link(array_merge( $args, array('depth' => $depth, 'max_depth' => $args['max_depth']))) ?>
</div>
</div>
</div>
<?php }

لینک به ارسال

دوستان شرمنده خودم حلش کردم کد ها توی فانکشن بودن الان فقط یک مشکل دیگه هست اون هم اینکه آواتار توی اون حاشیه نمیاد با اینکه div رو قبل از کد فراخوانی آواتار ایجاد کردم

http://shouremahour.ir/?p=1

این هم کدهای بخش کامنت در فانکشن هست


/*******************************
CUSTOM COMMENTS
********************************/
function mytheme_comment($comment, $args, $depth) {
$GLOBALS['comment'] = $comment; ?>
<li class="<?php
/* Only use the adminComment class from style.css if the user_id is 1 (admin) */
if (1 == $comment->user_id)
$oddcomment = "adminComment";
echo $oddcomment;
?>" id="comment-<?php comment_ID() ?>">
<div class="total-comment">
<?php echo get_avatar($comment,$size='38',$default='http://www.gravatar.com/avatar/61a58ec1c1fba116f8424035089b7c71?s=32&d=&r=G' ); ?> ....

سلام div که برای آواتار ساختید رو کجا بسته اید؟

فکر کنم با گذاشتن کد زیر بعد از فرخوانی آواتار مشکلتون حله


</div>

شاید بد نباشه سری هم به اینجا بزنید

لینک به ارسال

سلام

نه جناب فخار من واسه آواتار div نساختم من قبل از آواتار یک div ایجاد کردم و در پایان کدهای کامنت بستم در واقع این div شامل تمام اجزای کامنت میشه (متن و نویسنده و ...) اما نمیدونم برای چی آواتار توی این div قرار نگرفته اگر به این آدرس برید http://shouremahour.ir/?p=1 منظورم رو متوجه میشید

من برای اون div یک حاشیه در نظر گرفتم که همونطور که میبینید تمام اجزا توی اون حاشیه هستند به جز آواتار

_______________

اون تاپیک رو هم به روی چشم الان میخونم

لینک به ارسال

بنظر مشکل از کد زیر در استایل هست که به کلاس avatar داده شده:

position:absolute

لینک به ارسال

این کد رو


.avatar {height:55px;width:55px;}

به کد زیر تغییر دادم اما تغییری نکرد


.avatar {height:55px;width:55px;position:static;}

لینک به ارسال

این کد منظورم بود:

#content #colLeft ul.commentlist li .avatar{background:#fff;padding:1px;border:4px solid #eee;position:absolute;right:0;top:0;}

لینک به ارسال

ممنون آقا مرتضی ولی الان مشکل اینه که من وقتی position رو از کد بالا حذف میکنم آواتار به جای اینکه سمت راست اجزای دیگه باشه میاد بالا حتی وقتی که float : right رو هم بهش اضافه کردم فقط لینک و تاریخ اومدن در کنارش اما متاسفانه هنوز متن نظر پایینش هست


http://shouremahour.ir/?p=1

لینک به ارسال

نه آقا مرتضی همون موقع float:left دادم اما ریخت به هم

نمیخوام عرضش کمتر بشه

بلکه میخوام آواتار یه کم بره به راست

دقیقا همونجایی که قبلا بود با این تفاوت که حاشیه بزرگتر بشه و آواتار رو هم در بر بگیره

لینک به ارسال

سلام

برای اینکه آواتارتون در حالت float:right در جای خودش قرار بگیره می تونید از کد


vertical-align:top;

اما برای اصلاح کد خودتون در همون حالت position:absolute هم می تونستید یک لایه اخنتصاصی برای عکس بسازید و بهش کد position:relative را بدید تا لایه ی ابسولوت از اون لایه تبعیت کنه و در سر جای خودش بمونه

در ضمن برای float کردن نیازی به تعریف position:static نیست چون ممکنه بعضی جاهای دیگه رو به هم بزنه اگر می خواهید با فلات تنظیمش کنید کلا پوزیشن رو از css آواتار حذف کنید و کدی که بالا دادم رو به فلات اضافه کنید

لینک به ارسال

سلام جناب فخار

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

فقط این کد رو


#content #colLeft ul.commentlist li .avatar{background:#fff;padding:1px;border:4px solid #eee;right:0;top:0;float:right;}

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


#content #colLeft ul.commentlist li .avatar{background:#fff;padding:1px;border:4px solid #eee;right:0;top:0;float:right;vertical-align:top;}

لینک به ارسال
دوستان شرمنده خودم حلش کردم کد ها توی فانکشن بودن الان فقط یک مشکل دیگه هست اون هم اینکه آواتار توی اون حاشیه نمیاد با اینکه div رو قبل از کد فراخوانی آواتار ایجاد کردم

اگر سئوال همینه

در داخل لایه ی نمایش نظر یک لایه دیگه برای عکس آواتار ایجاد کن این لایه را با اندازه های px مشخص و در ابعاد معین تعریف کن در نتیجه به راحتی جاش رو می شه تعریف کرد

در نهایت

position:relative رو هم به کدهاش اضافه کن بعد کد آواتار را بگذار داخلش و کدهای استایل بندیش رو به حالت اول برگردون عکست می آد سر جاش

و برای اینکه ie هم به هم نخوره بعد از position:relativev اضافه کن


overflow:hidden;
zoom:1;

لینک به ارسال

سلام مجدد

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


http://shouremahour.ir/?p=1

لینک به ارسال

خوب لایه را که دیگه خودت باید بیاری داخل کادر اگر خیلی اذیت کننده است می تونی کلا از table استفاده کنی

post-336-0-76679800-1344661366_thumb.gif

لینک به ارسال

خوب بله جناب فخار میشه لایه رو آورد توی کادر اما مشکل من از اول اینه که نمیخوام این کار رو کنم

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

post-214-0-44146300-1344678035_thumb.jpg

در صورتی که من میخوام به این شکل بشه

post-214-0-46332200-1344678057_thumb.jpg

یعنی به جای اینکه لایه رو ببرم توی کادر، طول کادر رو بیشتر کنم

___________________________

با جدول هم اصلا نمیدونم چه جور باید انجام بدم اگر همینجوری بشه حلش کرد که خیلی بهتره

لینک به ارسال

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

و لایه ی نظراتت کلاسش می شه


float left;
clear:right;

و عکس


float:right;
clear:left;

لینک به ارسال

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

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

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

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

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

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

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

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

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