رفتن به مطلب

مشکل در کد captcha


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

سلام دوستان

من یه قالب طراحی کردم که تو صفحه تماس با ما یه کد catcha نمایش میده که کار میکنه و همین قالب رو به وردپرس تبدیل کردم ولی کد رو نمایش نمیده. مشکل از چیه؟

لطفا راهنمایی کنید.

لینک به ارسال

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

منظورتون اینه که کد Captcha برای اون نوشتید خودتون ؟

لینک به ارسال

ممنون از پاسخ شما.

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

لینک به ارسال

روش های زیادی هستش مثلا من خیلی مدت پیش بجای استفاده از Captcha ی افزونه ای از کپتچای گوگل استفاده میکردم ولی خب سنگینتر از افزونه بود دیگه طرفش نرفتم ! اینکه ایشون خودش کد کپچا داره خیلی خوبه الان افزونه captcha هم هستش که از علامات ضرب و جمع و تفریق استفاده میشه .

اگه هم میشه کد رو بزارید بقیه دوستان هم استفاده کنند :)

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

یه کدی بود که از نمی دونم کدوم سایت گذاشته بود.

اینم لینک عکس:

http://upload7.ir/imgs/2014-08/37270162477972878277.png

کد فایل captcha.php


<?php
session_start();
$string = '';
for ($i = 0; $i < 4; $i++) {
// this numbers refer to numbers of the ascii table (lower case)
$string .= chr(rand(48, 57));
}
$_SESSION['rand_code'] = $string;
$dir = './fonts/';
$image = imagecreatetruecolor(170, 60);
$black = imagecolorallocate($image, 0, 0, 0);
$color = imagecolorallocate($image, 100, 100, 90);
$white = imagecolorallocate($image, 255, 255, 255);
imagefilledrectangle($image,0,0,399,99,$white);
imagettftext ($image, 30, 0, 10, 40, $color, $dir."BYekan.ttf", $_SESSION['rand_code']);
header("Content-type: image/png");
imagepng($image);
?>

لینک به ارسال

مثله اینکه تصویر نداره ... یعنی فایلی که عکس داشته باشه تکه کده جالبیه اگه اینطور باشه ... تشکر بخاطر به اشتراک گذاری ;)

حتما استفاده میکنم ازش ...

لینک به ارسال

این کد یه تصویر تولید میکنه که کد رو روی اون مینویسه یعنی وقتی روی کد کلیک راست میکنم میشه تصویر رو ذخیره کرد.

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

لینک به ارسال

یه مشکل دیگه هست.

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

پست ها رو نمایش میده ولی یه مشکلی هست که وقتی تگ "بیشتر" رو قرار میدم و ادامه مطلب رو مینویسم پست رو همراه با ادامه مطلب اون نمایش میده.

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

the_content() از the_excerpt() استفاده کنم. تابع the_excerpt() میاد خودش پست رو کوتاه میکنه ولی من می خوام خودم مشخص کنم که تا کجا متن رو نمایش بده و بقیه رو تو صفحه single نمایش بده.

لطفا راهنمایی کنید

ویرایش شده توسط mehdi.jalali96
لینک به ارسال

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

در مورد پست دوم , بنظر من هیچ مرتبط با عنوان تاپیک نداره دوست عزیز اما نحوه استفاده از تگ


<?php the_excerpt(); ?>

که برای خلاصه استفاده میشه و به صورت پیش فرض 55 کاراکتر را به عنوان خلاصه مطلب نمایش می ده

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

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


function custom_excerpt_length( $length ) {
return 20;
}
add_filter( 'excerpt_length', 'custom_excerpt_length', 999 );

در خط دوم بجای 20 عدد دلخواه خودتون رو قرار بدید .

===============

و همینطور تگ شرطی :


<?php if ( is_category() || is_archive() ) {
the_excerpt();
} else {
the_content();
} ?>

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

اگه منظورتون رو درست متوجه شده باشم ;)

بهتره جای بهتری این سوال پرسیده بشه موفق باشید

لینک به ارسال

دوستان دقت کنید

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

موفق باشید

لینک به ارسال

سورس کامل کد captcha

فایل captcha.php


<?php
session_start();
$string = '';
for ($i = 0; $i < 4; $i++) {
// this numbers refer to numbers of the ascii table (lower case)
$string .= chr(rand(48, 57));
}
$_SESSION['rand_code'] = $string;
$dir = './fonts/';
$image = imagecreatetruecolor(170, 60);
$black = imagecolorallocate($image, 0, 0, 0);
$color = imagecolorallocate($image, 100, 100, 90);
$white = imagecolorallocate($image, 255, 255, 255);
imagefilledrectangle($image,0,0,399,99,$white);
imagettftext ($image, 30, 0, 10, 40, $color, $dir."BYekan.ttf", $_SESSION['rand_code']);
header("Content-type: image/png");
imagepng($image);
?>

کد های صفحه تماس با ما همراه با کد captcha

<!doctype html>
<html>
<head>
<!------- attached files ------->
<?php
session_start();

if(isset($_POST['submit'])) {

if(!empty($_POST['name']) && !empty($_POST['email']) && !empty($_POST['message']) && !empty($_POST['code'])) {



if($_POST['code'] == $_SESSION['rand_code']) {

// send email

$accept = "پیغام شما با موفقیت ارسال شد.";
$to = "Mehdi.Jalali1996@gmail.com";
$subject = $_POST['subject'];
$from = $_POST['email'];
$user_message = $_POST['message'];
$name = $_POST['name'];

$body = "\n".
"نام: $name\n".
"ایمیل: $from \n".
"توضیحات: \n ".
"$user_message\n".

$headers = "From: $from \r\n";
$headers .= "Reply-To: $from \r\n";

mail($to, $subject, $body, $headers);
}

else {

$error = "کد امنیتی را اشتباه وارد کرده اید! دوباره امتحان کنید";

}

} else {

$error = "لطفا تمامی فیلد ها را تکمیل نمایید.";

}

}
?>
<!--------------------- /head ------------------------->
</head>

<body>
<?php get_header(); ?>

<!-------- page content ----------->

<div class="page-content">
<!-- page content title -->
<div class="page-content-t">
<div class="page-content-tt">
<center>تماس با ما</center>
</div>
</div>
<!-- page content text -->
<div class="page-content-text">
<!-- contact us text -->
<br>
لطفا دیدگاه های خود را از طریق فرم زیر یا ایمیل <span class="red-bold"> info@modiranwp.ir</span> با ما در میان بگذارید. (پاسخ پیام شما از طریق ایمیل به شما ارسال می شود.)<br>
<!-- contact us form -->
<?php if(!empty($error)) echo '<div class="massage_error">'.$error.'</div>'; ?>
<?php if(!empty($accept)) echo '<div class="massage_ok">'.$accept.'</div>'; ?>
<br>
<form name="contact-us-form" method="post" action="">
نام <span class="red">(ضروری)</span>:<br>
<input name="name" class="form-input" size="40" tabindex="2" aria-required="true"/>
<br>

ایمیل شما<span class="red"> (ضروری)</span>:<br>
<input name="email" type="text" class="form-input" size="40" tabindex="2" aria-required="true"/>
<br>

موضوع:<br>
<input name="subject" type="text" class="form-input" size="40" tabindex="2" aria-required="true"/>
<br>

پیام شما<span class="red"> (ضروری)</span>:<br>
<textarea name="message" id="form-comments" rows="5" cols="20" ></textarea>
<br>

کد امنیتی زیر را وارد کنید:   
<input type="text" name="code" value="" id="code" class="form-input" name="code">
<br/>
<!-- captcha code -->
<div class="all-captcha">
<div id="captcha-text-code"> کد امنیتی:</div>
<image src="<?php bloginfo('template_url'); ?>/captcha.php" height="40" style="float: margin-left:10px;"/>
</div>
<input name="submit" type="submit" class="form-bu" value="ارسال">
</form>
</div>
</div>
<!----------- footer -------------->
<div class="footer-shop"></div>
<!--------------------- /body ------------------------->
</body>
</html>


ویرایش شده توسط mehdi.jalali96
لینک به ارسال

ممنون.

من میخوام تو صفحه ی افزودن نوشته انتخاب کنم که تا کجای متن رو تو صفحه فروشگاه نمایش بده.مثلا میخوام پست x رو 3 خط از اون نمایش بده ولی پست y رو دو خط ازش نمایش بده.

یه مثال: سایت wpparsi.com یه صفحه فروشگاه داره با آدرس http://www.wpparsi.c...tegory/فروشگاه/ که تو اون پست ها نمایش داده میشن. پست اول رو ازش 6 خط نمایش میده، پست دوم رو 3 خط نمایش میده و ... که بستگی به پست داره که تا کجاشو بخواد نمایش بده. منم میخوام این کار رو کنم فقط سایت من دسته بندی بیشتری داره مثل قالب های ویژه ، قالب های رایگان و ... که هر کدوم رو میخوام تو صفحه خودش نمایش بدم

اگه راه حلی دارید لطفا راهنمایی کنید

ویرایش شده توسط mehdi.jalali96
لینک به ارسال

نظر منو بخواهید این دو روش داره :

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

2. یا اومده برای هر دسته یه خاصیتی رو مشخص کرده که کوتاه و مختصر عرض میکنم :

اگه دقت کنید توی قالب پیشفرض وردپرس هنگامی که به افزودن نوشته مراجعه می کنید در ستون کناری نوشته یک سری امکانات هست مثال : انتشار نوشته , تگ ها و غیره .

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

برای هر کدوم یه قالببندی تعیین شده , شما وارد پوشه twentyfourteen در themes در wp-content بشید و مشاهده می کنید چند تا فایل به اسم های :

content-aside.php

content-audio.php

content-image.php

و غیره

45460552832368731985.png

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

در مورد اینکه پست x دارای 4 خط و پست y دارای 8 خط هست و همینطور متفاوت این انتخابی نیست یا طراحی حرفه ای !

خیلی سادست

11975514453345709552.png

اگه منظورتون این باشه ,

بخاطر به اشتراک گذاری کد کپتچا هم ازتون تشکر میکنم

موفق باشید ;)

لینک به ارسال

خیلی ممنون. توضیح کاملی بود.من خیلی وقته واسه حل این مشکل تلاش میکنم ولی حل نمیشه.

منم مثل شما مطمئن هستم که از روش اول (تگ ادامه مطلب) که فرمودید استفاده میکنه.

یه توضیح کامل:

من تو وردپرس چند تا دسته ایجاد کردم تا مطالب رو سازماندهی کنم.(دسته قالب های ویژه، قالب های رایگان، افزونه های ویژه، افزونه های رایگان). بعد 5 صفحه ایجاد کردم از طریق وردپرس (1 صفحه فروشگاه که تمامی مطالب 4 دسته توش قرار میگیره + 4 صفحه قالب های ویژه، قالب های رایگان، افزونه های ویژه، افزونه های رایگان که مطالب داخل هر صفحه از دسته مربوط به اون دریافت میشه و نمایش داده میشه). من برای اینکه مطالب رو جدا نمایش بدم تنها یه راه داشتم که از صفحه فروشگاه که قبلا کد نویسی کرده بودم 4 تا کپی بگیرم و تو کد هر صفحه از


<?php query_posts(' cat = x '); while ( have_posts() ) : the_post(); ?>

استفاده کنم و همچنین کد


<?php
/*
Template Name: نام برگه
*/
?>

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

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

28934975208729499347.png

ولی وقتی صفحه shop.php رو به index.php تغییر میدم و از کد زیر به جای کد قبلی استفاده میشه این مشکل حل میشه

کد قبلی:


<?php query_posts('cat=3'); while ( have_posts() ) : the_post(); ?>
<div class="post">
<!-- post title -->
<div class="post-t">
<!-- post title text -->
<div class="post-tt">
<a href="<?php the_permalink() ?>"><h2><?php the_title(); ?></h2></a>
</div>
</div>
<div class="post-content">
<!-- post content image -->
<div class="post-content-image">
<center><?php if ( has_post_thumbnail()) the_post_thumbnail('home-thumb'); ?> </center>
</div>
<div class="post-content-text">
<?php the_content(); ?>
</div>
<!-- read more button -->
<a id="btn" href="<?php the_permalink() ?>"><div class="read-more-btn"><b>ادامه مطلب ...</b></div></a>
</div>

کد جدید


<?php while ( have_posts() ) : the_post(); ?>
<div class="post">
<!-- post title -->
<div class="post-t">
<!-- post title text -->
<div class="post-tt">
<a href="<?php the_permalink() ?>"><h2><?php the_title(); ?></h2></a>
</div>
</div>
<div class="post-content">
<!-- post content image -->
<div class="post-content-image">
<center><?php if ( has_post_thumbnail()) the_post_thumbnail('home-thumb'); ?> </center>
</div>
<div class="post-content-text">
<?php the_content(); ?><br>
</div>
<!-- read more button -->
<a id="btn" href="<?php the_permalink() ?>"><div class="read-more-btn"><b>ادامه مطلب ...</b></div></a>
</div>

</div>
<?php endwhile; ?>

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

ویرایش شده توسط mehdi.jalali96
لینک به ارسال

اسکرین شات از صفحه اصلی:

http://upload7.ir/imgs/2014-09/49846661066334582133.png

اسکرین شات از صفحه فروشگاه:

http://upload7.ir/imgs/2014-09/95207298459579404978.png

لینک به ارسال

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

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

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

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

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

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

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

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

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