رفتن به مطلب

ariux

عضو سایت
  • تعداد ارسال‌ها

    31
  • تاریخ عضویت

  • آخرین بازدید

نوشته‌ها ارسال شده توسط ariux

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

    افزونه های نصب شده رو نیز غیر فعال کردم اما باز این مشکل پابرجاست . 

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

    279934150_FireShotCapture003.png.e02bf5ccbf5932d841a844821a1e547f.png

  2. سلام دوستان ، من با استفاده از این مقاله اقدام به تعبیه ورود و ثبت نام در سایتم کردم ، اما با مشکلی رو به رو شدم .

    مشکل در واقع این هستش که فرم به خوبی کار میکنه و کاربر ورود ؛ و یا ثبت نام رو انجام میده اما صفحه به صورت اتوماتیک ری لود / ری فرش نمیشه تا اطلاعات کاربر لاگین شده رو نمایش بده .

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

    مورد عجیب اما این هستش که تمام مواردی که عرض کردم روی سایت آنلاین بروز پیدا میکنه و روی نسخه لوکال که توسط wamp ایجاد شده ، تمام موارد بدون کوچکترین مشکلی کار میکنند و جواب میدهند .

    این کدهایی هستش که بنده کمی شخصی سازیشون کردم اینجا قرار میدم ، امیدوارم دوستی بتونه کمک بکنه 

     

    function auth_user_login($user_login, $password, $login)
    {
        $info = array();
        $info['user_login'] = $user_login;
        $info['user_password'] = $password;
        $info['remember'] = (isset( $_POST['rememberme'] ) && true == $_POST['rememberme'] ? true : false);
    
        $userdata = get_user_by('login', $info['user_login']);
        $result = wp_check_password($info['user_password'], $userdata->data->user_pass, $userdata->data->ID);
    
        if ( $result ) {
    
            auto_login( $userdata );
            echo json_encode(array('loggedin'=>true, 'message'=>__('ورود موفقیت امیز بود ، در حال بارگذاری')));
    
        } else {
    
            echo json_encode(array('loggedin'=>false, 'message'=>__(' اطلاعات وارد شده نادرست می باشد! ')));
    
        }
    
        die();
    
    }
    
    function auto_login( $user ) {
    
        if ( !is_user_logged_in() ) {
    
            $user_id = $user->data->ID;
            $user_login = $user->data->user_login;
    
            wp_set_current_user( $user_id, $user_login );
            wp_set_auth_cookie( $user_id );
    
        } 
    }

     

    jQuery(document).ready(function ($) {
        // Display form from link inside a popup
        $('#pop_login, #pop_signup').on('click', function (e) {
            formToFadeOut = $('form#register');
            formtoFadeIn = $('form#login');
            if ($(this).attr('id') == 'pop_signup') {
                formToFadeOut = $('form#login');
                formtoFadeIn = $('form#register');
            }
            formToFadeOut.fadeOut(100, function () {
                formtoFadeIn.fadeIn();
            })
            return false;
        });
    
        // Display lost password form
        $('#pop_forgot').click(function(){
            formToFadeOut = $('form#login');
            formtoFadeIn = $('form#forgot_password');
            formToFadeOut.fadeOut(100, function () {
                formtoFadeIn.fadeIn();
            })
            return false;
        });
    
        // Close popup
        $(document).on('click', '.close-any, .close', function () {
            $('form#login, form#register, form#forgot_password').fadeOut(100, function () {
                $('.close-any').remove();
            });
            return false;
        });
    
        // Show the login/signup popup on click
        $('#show_login, #show_signup').on('click', function (e) {
            $('[canvas]').prepend('<div class="close-any"></div>');
            if ($(this).attr('id') == 'show_login')
                $('form#login').fadeIn(100);
            else
                $('form#register').fadeIn(100);
            e.preventDefault();
        });
    
        // Perform AJAX login/register on form submit
        $('form#login, form#register').on('submit', function (e) {
            if (!$(this).valid()) return false;
            $('p.status', this).show().text(auth_script_object.loadingmessage);
            action = 'ajaxlogin';
            username = $('form#login #username').val();
            firstName = '';
            lastName = '';
            rememberme = '';
            email = '';
            password = $('form#login #password').val();
            security = $('form#login #security').val();
            if ($(this).attr('id') == 'register') {
                action = 'ajaxregister';
                username = $('#signonname').val();
                firstName = $('#signonfirstname').val();
                lastName = $('#signonlastname').val();
                password = $('#signonpassword').val();
                email = $('#email').val();
                security = $('#signonsecurity').val();
            }
            ctrl = $(this);
            $.ajax({
                type: 'POST',
                dataType: 'json',
                url: auth_script_object.ajaxurl,
                data: {
                    'action': action,
                    'username': username,
                    'password': password,
                    'email': email,
                    'firstName': firstName,
                    'lastName': lastName,
                    'security': security
                },
                success: function (data) {
                    $('p.status', ctrl).text(data.message);
                    if (data.loggedin == true) {
                        document.location.href = auth_script_object.redirecturl;
                        window.location.reload(true);
                    }
                }
            });
            e.preventDefault();
        });
    
        // Perform AJAX forget password on form submit
        $('form#forgot_password').on('submit', function (e) {
            if (!$(this).valid()) return false;
            $('p.status', this).show().text(auth_script_object.loadingmessage);
            ctrl = $(this);
            $.ajax({
                type: 'POST',
                dataType: 'json',
                url: auth_script_object.ajaxurl,
                data: {
                    'action': 'ajaxforgotpassword',
                    'user_login': $('#user_login').val(),
                    'security': $('#forgotsecurity').val(),
                },
                success: function (data) {
                    $('p.status', ctrl).text(data.message);
                }
            });
            e.preventDefault();
            return false;
        });
    
        // Client side form validation
        if ($("#register").length)
            $("#register").validate(
                {
                    rules: {
                        password2: {
                            equalTo: '#signonpassword'
                        }
                    }
                }
            );
        else if ($("#login").length)
            $("#login").validate();
        if ($('#forgot_password').length)
            $('#forgot_password').validate();
    });

     

    ممنون از شما

  3. درود بر شما 

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

    ویرایش ...

    این کد رو خودم پیدا کردم امیدوارم کار بکنه در هر صورت ممنون از پاسخ شما 

    Check If WordPress Post is Older than X Days

  4. درود دوستان ، من یک کاستوم فیلد دارم و میخوام اون رو به نحوی شرطی کنم که اگر مثلأ یک پست بعد از x روز ویرایش نشد کد دیگری به صورت خودکار نمایش داه بشه . آیا چنین چیزی امکان داره ؟ 

    من در کدکس های وردپرس گشتم ، A Date Page چند کاندیشن برای مدیریت بایگانی داره ، اما نمیدونم با این کدها چیزیکه من میخوام قابل انجام هست یا خیر . 

    سپاس فراوان . 

     

  5. درود بر شما دوستان گرامی .

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

    این تکه کد  . 

    if(!empty($id = get_post_meta(get_the_ID(), 'id', true))) :
    	if(empty($imdb = get_post_meta(get_the_ID(), "_imdb_{$id}", true))) {
    		$json = @file_get_contents('http://www.omdbapi.com/?i='.$id.'&apikey=0'); 
    		if($json !== false) {
    			$imdb = json_decode($json, true);
    			update_post_meta(get_the_ID(), "_imdb_{$id}", $imdb);
    			echo $json;
    		}
    	}
    endif;

     

    و درخواست / پرسش من  : میخواستم بدونم آیا راهی هست که به وسیله اون این کد تبدیل به یک هوک بشه تا با کمکش

    1- هر بار برای دریافت اطلاعات کل کد در فایل قالب ها به صورت مجزا گنجانده نشه .

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

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

     

     

  6. درود دگربار 

    ببخشید دوباره مزاحم میشم ، در آغاز باید بابت کدی که در اختیارم گذاشتید تشکر کنم ، مشکل سرعت رفع شد اما مشکلی دیگر پدید آمد و اون این هستش که برای مثال وقتی من اطلاعات یک پست رو از Api دریافت میکنم و به نمایش میگذارم  پس از مثلأ تغییر ای دی درون متاباکس دیگه اطلاعات اون پست تغییر نمیکنه و همان اطلاعت قبلی که ثبت شده رو بار دیگر به نمایش میگذاره ، آیا راهی هست که متای پست رو با تغییر این متاباکس هم آپدیت کنیم . درست مثل اتفاقی که با همون متابکس میفته و همیشه امکان ویرایش ، آپدیت و به نمایش گذاشتن اطلاعاتش وجود داره . 

     

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

     

    $imdbid = get_post_meta( get_the_ID(), '_imdbid', true ); // my custom metabox declaration
    if(empty($imdb = get_post_meta($post->ID, '_imdb', true))) {
    echo $json = @file_get_contents('http://www.omdbapi.com/?i='.$imdbid.'&apikey=101010'); // using it here .
    	if($json !== false) {
    		$imdb = json_decode($json, true);
    		update_post_meta($post->ID, '_imdb', $imdb);
    	}
    }

    ممنون از وقتی که میگذارید و پاسخ منِ تازه کار رو میدید . سپاس .

  7. درود بر شما . این کد هنگام لود سایت اجرا میشه . در واقع این کد اطلاعات رو از سایت منبع دریافت و در سایت مقصد به نمایش میذاره ، مشکلی البته در نمایش نیست اما نمیدونم دلیل لود سنگین اون چی هستش . البته این کد در لوپ وردپرس قرار میگیره و توسط یه متاباکس برای هر پست ای دی مخصوص به هر فیلم رو که همانند ای دی imdb هستش دریافت میکنه . خودم فکر میکنم برای هر پست یک زمانی نیاز داره تا اطلاعت رو دریافت بکنه اما برای مثال اگر 15 پست در صفحه نمایش داده بشه دیگه نباید 15 برابر سرعت لود صفحه کاهش پیدا بکنه .

  8. سلام دوستان . 

    من از یک api به نام omdbapi اطلاعات imdb هر فیلم و سریال رو دریافت میکنم . 

    برای انجام این کار از فانکشن file_get_contents استفاده کردم و اطلاعات رو به خوبی تونستم دریافت بکنم .

    ob_start();
    $id = $_POST["id"];
    $url = file_get_contents('http://www.omdbapi.com/?i=&apikey');
    $data = json_decode($url, true);
    ob_end_clean();
    ob_end_flush(); 

     

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

    با سپاس از شما . 

     

     

     

  9. درود

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

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

    برای مثال در همین قالبی که تصویرش رو قرار دادید بی شک اطلاعات مورد نیاز شما برای نصب و کار با قالب درون پوشه Documentation گنجانده شده .

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

     

  10. درود میتونید از این کد استفاده کنید ، فقط باید ظاهرش رو خودتون شخصی سازی کنید .

                    <div class="logo">
    				<h1 class="site-title">
                           <a href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home">
                            <?php bloginfo( 'name' ); ?>
                            </a>
                            </h1>
                            <?php $description = get_bloginfo( 'description', 'display' ); if ( $description || is_customize_preview() ) : ?>
                            <p class="site-description">
                                <?php echo $description; /* WPCS: xss ok. */ ?>
                            </p>
                    </div>

     

    • امتیاز 1
  11. درود دوستان عزیز 

    من یک نسخه از افزونه Frontend Submissions  ( نسخه نال شده 2.4.7 ) رو که یک افزونه چند فروشندگی برای  Easy Digital Downloads هستش رو دانلود کردم ، و اون رو در لوکال هاست خودم نصب کردم . 

    اما متوجه شدم که هیچ کدوم از فایل های css , js این پلاگین فراخوانی نمیشه ، میخواستم بدونم آیا تا به حال دوستی با چنین مشکلی برخورد کرده و آیا امکان حل این مشکل وجود داره یا خیر .

    با سپاس از شما . 

  12. درود بر شما علی جان با سپاس از پاسخ گویی شما

    منظورتون این باشه که برای هر دسته ای یه استایل خاص داشته باشه میتونید از in_category استفاده کنید

    بله منظورم همین هستش علی جان ، هر دسته من یک استایل مخصوص به خودش داره و میخوام در دسته جدید هم استایل هر دسته به همون شکل یاقی بمونه

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

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

    اما پرسش :

    دوستان اهل فن ، بنده چندین دسته دارم و دوست دارم ، هر کدام از پست هایی که در این دسته دارم رو در یک دسته خاص ( برای مثال ویژه ) به نمایش بگزارم .

    میدونم با کوئری میشه ، اما من نمیخوام فقط خود پست نمایش داده بشه ، من میخوام هر زمان که توی ویرایش و یا ارسال اون پست تیک دسته بندی ( ویژه ) زده شد ، پست به صورت کامل ( ظاهر و باطن ) بره و در کتگوری ( ویژه ) نمایش داده بشه .

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

    آیا راهی برای انجام این کار هستش ؟

    با سپاس فراوان .

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

    A,B,C,D و الی آخر ، بنده از یک کد استفاده کردم ، اما متاسفانه فقط نمایش داده میشه واژگان و عملکردش نادرسته ، دقیق ترش اینه که بگم اصلأ عمل نمیکنه

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


    <?php
    add_action( 'posts_where', 'startswithaction' );
    function startswithaction( $sql ){
    global $wpdb;
    $startswith = get_query_var( 'startswith' );

    if( $startswith ){
    $sql .= $wpdb->prepare( " AND $wpdb->posts.post_title LIKE %s ", $startswith.'%' );
    }

    return $sql;
    }
    add_action( 'posts_where', 'startswithnumberaction' );
    function startswithnumberaction( $sql ){
    global $wpdb;
    $startswithnumber = get_query_var( 'startswithnumber' );

    if( $startswithnumber ){
    $sql .= $wpdb->prepare( " AND $wpdb->posts.post_title NOT REGEXP %s ", '^[[:alpha:]]' );
    }

    return $sql;
    }

    query_posts( $query_string .'&startswith='.$_GET['letter'].'&posts_per_page=-4&startswithnumber='.$_GET['number']);

    echo "<li><a href='.$PHP_Self/?$query_string&number=true' ># </a></li> - ";


    foreach (range('A', 'Z') as $i)
    {
    $letter =strtolower($i);
    echo "<li><a href='.$PHP_Self/?$query_string&letter=$letter' >$i </a></li> - ";
    }
    echo "<li><a href='.$PHP_Self/?$query_string' >All </a></li>";
    ?>

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

    با سپاس از شما دوستان گرامی .

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

    من میخواستم به صورت اتوماتیک روی هر کدام از این متغیر ها یک عدد اضافه کنم ، بدین صورت که برای هر فیلد یک عدد به صورت پیش فرض در نظر گرفته بشه و نیاز به دوپلیکیت کردن کل کاندیشن نباشه .

    یک عدد که از 1 آغاز بشه و تا بدان جا که فیلد وجود داره یک واحد به اون عدد اضافه بشه .

    آیا به صورت کلی چنین چیزی امکانش هست یا خیر .

    برای مثال بدین صورت


    <?php if ( ! (empty ( $myinput_normal1) && empty ( $myinput_big1) && empty ( $myinput_bigger1)) ) { ?>
    <?php $myinput_normal1 = get_post_meta($post->ID, 'myinput_normal1', true); ?>
    <?php $myinput_big1 = get_post_meta($post->ID, 'myinput_big1', true); ?>
    <?php $myinput_bigger1 = get_post_meta($post->ID, 'myinput_bigger1', true); ?>
    <?php echo '<li>'. '<span>'.$myinput_normal1.'</span>'.'<a title="' .$myinput_normal1. '" href="' .$myinput_big1. '">'.
    '</a>'.'<a title="" href="' .$myinput_bigger1. '">'.'</a>'.'</li>' ?>
    <?php } ?>

    تبدیل بشه به


    <?php if ( ! (empty ( $myinput_normal2) && empty ( $myinput_big2) && empty ( $myinput_bigger2)) ) { ?>
    <?php $myinput_normal2 = get_post_meta($post->ID, 'myinput_normal2', true); ?>
    <?php $myinput_big2 = get_post_meta($post->ID, 'myinput_big2', true); ?>
    <?php $myinput_bigger2 = get_post_meta($post->ID, 'myinput_bigger2', true); ?>
    <?php echo '<li>'. '<span>'.$myinput_normal2.'</span>'.'<a title="' .$myinput_normal2. '" href="' .$myinput_big2. '">'.
    '</a>'.'<a title="" href="' .$myinput_bigger2. '">'.'</a>'.'</li>' ?>
    <?php } ?>

    راستش دقیق نمیدونم کدام لوپ میتونه این کار رو انجام بده با foreach تست کردم اما بدین صورت که در نظر داشتم جواب نداد و این احتمالأ به دلیل آماتور بودنم در php هستش .

    با سپاس بی کران .

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