آیا میدانید شما میتوانید به صورت "کاملا رایگان" سایت ، محصول خدمات و... خود را در پی سی وب معرفی کنید ؟

فرصت را از دست ندهید
مشاهده RSS Feed

Ahmadreza

آموزش نال کردن Yoast Seo premium - افزونه سئو حرفه ای وردپرس

به این مطلب امتیاز بدهید
آموزش نال کردن Yoast Seo premium - افزونه سئو حرفه ای وردپرس :

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

خیلی شرمنده که دیر به دیر آموزش میزارم ، ولی خوب به جاش هر وقت اموزش میزارم ، آموزش های تخصصی میزارم که تو کل نت ایران بگردید ، چیزی پیدا نخواهید کرد !

برای نال کردن Yoast Seo premium شما به یک نسخه اصلی نیاز دارید ، یعنی اول باید یک لایسنس Yoast Seo premium داشته باشید . که بتوانید نسخه مربوطه را دانلود کنید .

توی سطح نت هم بگردید ، البته هست .

بعد از این که حالا نسخه ویژه رو دانلود کردید ، باید کار های زیر رو انجام بدید :

1) به مسیر زیر بروید :

کد:
WordPress\wp-content\plugins\wordpress-seo-premium\vendor\yoast\license-manager
2) در این مسیر فایل class-license-manager.php رو باز کنید

یک شرط هست :

کد:
$this->license_is_valid()
معمولا چنین ساختاری داره :

کد:
! $this->license_is_valid() ) {
که این رو باید برعکس کنید یعنی مثلا ! رو بردارید و کار های مختلفی میشه کرد ، مثلا میشه کلا این قطعه کد رو حذف کرد.

من یک نمونه فایل نال شده رو در اختیارتون میذارم :

کد PHP:

<?php

if ( ! interface_exists'iYoast_License_Manager'false ) ) {

   interface 
iYoast_License_Manager {
      public function 
specific_hooks();

      public function 
setup_auto_updater();
   }

}

if ( ! 
class_exists'Yoast_License_Manager'false ) ) {

   
/**
    * Class Yoast_License_Manager
    */
   
abstract class Yoast_License_Manager implements iYoast_License_Manager {

      
/**
       * @const VERSION The version number of the License_Manager class
       */
      
const VERSION 1;

      
/**
       * @var Yoast_License The license
       */
      
protected $product;

      
/**
       * @var string
       */
      
private $license_constant_name '';

      
/**
       * @var boolean True if license is defined with a constant
       */
      
private $license_constant_is_defined false;

      
/**
       * @var boolean True if remote license activation just failed
       */
      
private $remote_license_activation_failed false;

      
/**
       * @var array Array of license related options
       */
      
private $options = array();

      
/**
       * @var string Used to prefix ID's, option names, etc..
       */
      
protected $prefix;

      
/**
       * @var bool Boolean indicating whether this plugin is network activated
       */
      
protected $is_network_activated false;

      
/**
       * Constructor
       *
       * @param Yoast_Product $product
       */
      
public function __constructYoast_Product $product ) {

         
// Set the license
         
$this->product $product;

         
// set prefix
         
$this->prefix sanitize_title_with_dashes$this->product->get_item_name() . '_'null'save' );

         
// maybe set license key from constant
         
$this->maybe_set_license_key_from_constant();
      }

      
/**
       * Setup hooks
       *
       */
      
public function setup_hooks() {

         
// show admin notice if license is not active
         
add_action'admin_notices', array( $this'display_admin_notices' ) );

         
// catch POST requests from license form
         
add_action'admin_init', array( $this'catch_post_request' ) );

         
// setup item type (plugin|theme) specific hooks
         
$this->specific_hooks();

         
// setup the auto updater
         
$this->setup_auto_updater();

      }

      
/**
       * Display license specific admin notices, namely:
       *
       * - License for the product isn't activated
       * - External requests are blocked through WP_HTTP_BLOCK_EXTERNAL
       */
      
public function display_admin_notices() {

         if ( ! 
current_user_can'manage_options' ) ) {
            return;
         }

         
// show notice if license is invalid
         
if ($this->license_is_valid() ) {
            if ( 
$this->get_license_key() == '' ) {
               
$message __'<b>Warning!</b> You didn\'t set your %s license key yet, which means you\'re missing out on updates and support! <a href="%s">Enter your license key</a> or <a href="%s" target="_blank">get a license here</a>.' );
            } else {
               
$message __'<b>Warning!</b> Your %s license is inactive which means you\'re missing out on updates and support! <a href="%s">Activate your license</a> or <a href="%s" target="_blank">get a license here</a>.' );
            }
            
?>
                <div class="notice notice-error yoast-notice-error">
                    <p><?php printf__$message$this->product->get_text_domain() ), $this->product->get_item_name(), $this->product->get_license_page_url(), $this->product->get_tracking_url'activate-license-notice' ) ); ?></p>
                </div>
            <?php
         
}

         
// show notice if external requests are blocked through the WP_HTTP_BLOCK_EXTERNAL constant
         
if ( defined"WP_HTTP_BLOCK_EXTERNAL" ) && WP_HTTP_BLOCK_EXTERNAL === true ) {

            
// check if our API endpoint is in the allowed hosts
            
$host parse_url$this->product->get_api_url(), PHP_URL_HOST );

            if ( ! 
defined"WP_ACCESSIBLE_HOSTS" ) || stristrWP_ACCESSIBLE_HOSTS$host ) === false ) {
               
?>
                    <div class="notice notice-error yoast-notice-error">
                        <p><?php printf__'<b>Warning!</b> You\'re blocking external requests which means you won\'t be able to get %s updates. Please add %s to %s.'$this->product->get_text_domain() ), $this->product->get_item_name(), '<strong>' $host '</strong>''<code>WP_ACCESSIBLE_HOSTS</code>' ); ?></p>
                    </div>
               <?php
            
}

         }
      }

      
/**
       * Set a notice to display in the admin area
       *
       * @param string $type    error|updated
       * @param string $message The message to display
       */
      
protected function set_notice$message$success true ) {
         
$css_class = ( $success ) ? 'notice-success yoast-notice-success' 'notice-error yoast-notice-error';
         
add_settings_error$this->prefix 'license''license-notice'$message$css_class );
      }

      
/**
       * Remotely activate License
       * @return boolean True if the license is now activated, false if not
       */
      
public function activate_license() {

         
$result $this->call_license_api'activate' );

         if ( 
$result ) {

            
// show success notice if license is valid
            
if ( $result->license === 'valid' ) {
               
$success true;
               
$message $this->get_successful_activation_message$result );
            } else {
               
$this->remote_license_activation_failed true;

               
$success false;
               
$message $this->get_unsuccessful_activation_message$result );
            }

            
// Append custom HTML message to default message.
            
$message .= $this->get_custom_message$result );

            
$this->set_notice$message$success );

            
$this->set_license_status$result->license );
         }

         return 
$this->license_is_valid();
      }

      
/**
       * Remotely deactivate License
       * @return boolean True if the license is now deactivated, false if not
       */
      
public function deactivate_license() {

         
$result $this->call_license_api'deactivate' );

         if ( 
$result ) {

            
// show notice if license is deactivated
            
if ( $result->license === 'deactivated' ) {
               
$success true;
               
$message sprintf__"Your %s license has been deactivated."$this->product->get_text_domain() ), $this->product->get_item_name() );
            } else {
               
$success false;
               
$message sprintf__"Failed to deactivate your %s license."$this->product->get_text_domain() ), $this->product->get_item_name() );
            }

            
$message .= $this->get_custom_message$result );

            
// Append custom HTML message to default message.
            
$this->set_notice$message$success );

            
$this->set_license_status$result->license );
         }

         return ( 
$this->get_license_status() === 'deactivated' );
      }

      
/**
       * @param string $action activate|deactivate
       *
       * @return mixed
       */
      
protected function call_license_api$action ) {

         
// don't make a request if license key is empty
         
if ( $this->get_license_key() === '' ) {
            return 
false;
         }

         
// data to send in our API request
         
$api_params = array(
            
'edd_action' => $action '_license',
            
'license'    => $this->get_license_key(),
            
'item_name'  => urlencodetrim$this->product->get_item_name() ) ),
            
'url'        => get_option'home' )
            
// grab the URL straight from the option to prevent filters from breaking it.
         
);

         
// create api request url
         
$url add_query_arg$api_params$this->product->get_api_url() );

         require_once 
dirname__FILE__ ) . '/class-api-request.php';
         
$request = new Yoast_API_Request$url );

         if ( 
$request->is_valid() !== true ) {
            
$this->set_noticesprintf__"Request error: \"%s\" (%scommon license notices%s)"$this->product->get_text_domain() ), $request->get_error_message(), '<a href="http://kb.yoast.com/article/13-license-activation-notices">''</a>' ), false );
         }

         
// get response
         
return $request->get_response();
      }


      
/**
       * Set the license status
       *
       * @param string $license_status
       */
      
public function set_license_status$license_status ) {
         
$this->set_option'status'$license_status );
      }

      
/**
       * Get the license status
       *
       * @return string $license_status;
       */
      
public function get_license_status() {
         
$license_status $this->get_option'status' );

         return 
trim$license_status );
      }

      
/**
       * Set the license key
       *
       * @param string $license_key
       */
      
public function set_license_key$license_key ) {
         
$this->set_option'key'$license_key );
      }

      
/**
       * Gets the license key from constant or option
       *
       * @return string $license_key
       */
      
public function get_license_key() {
         
$license_key $this->get_option'key' );

         return 
trim$license_key );
      }

      
/**
       * Gets the license expiry date
       *
       * @return string
       */
      
public function get_license_expiry_date() {
         return 
$this->get_option'expiry_date' );
      }

      
/**
       * Stores the license expiry date
       */
      
public function set_license_expiry_date$expiry_date ) {
         
$this->set_option'expiry_date'$expiry_date );
      }

      
/**
       * Checks whether the license status is active
       *
       * @return boolean True if license is active
       */
      
public function license_is_valid() {
         return ( 
$this->get_license_status() === 'valid' );
      }

      
/**
       * Get all license related options
       *
       * @return array Array of license options
       */
      
protected function get_options() {

         
// create option name
         
$option_name $this->prefix 'license';

         
// get array of options from db
         
if ( $this->is_network_activated ) {
            
$options get_site_option$option_name, array() );
         } else {
            
$options get_option$option_name, array() );
         }

         
// setup array of defaults
         
$defaults = array(
            
'key'         => '',
            
'status'      => '',
            
'expiry_date' => ''
         
);

         
// merge options with defaults
         
$this->options wp_parse_args$options$defaults );

         return 
$this->options;
      }

      
/**
       * Set license related options
       *
       * @param array $options Array of new license options
       */
      
protected function set_options( array $options ) {
         
// create option name
         
$option_name $this->prefix 'license';

         
// update db
         
if ( $this->is_network_activated ) {
            
update_site_option$option_name$options );
         } else {
            
update_option$option_name$options );
         }

      }

      
/**
       * Gets a license related option
       *
       * @param string $name The option name
       *
       * @return mixed The option value
       */
      
protected function get_option$name ) {
         
$options $this->get_options();

         return 
$options$name ];
      }

      
/**
       * Set a license related option
       *
       * @param string $name  The option name
       * @param mixed  $value The option value
       */
      
protected function set_option$name$value ) {
         
// get options
         
$options $this->get_options();

         
// update option
         
$options$name ] = $value;

         
// save options
         
$this->set_options$options );
      }

      public function 
show_license_form_heading() {
         
?>
            <h3>
            <?php printf__"%s: License Settings"$this->product->get_text_domain() ), $this->product->get_item_name() ); ?>
                &nbsp; &nbsp;
            </h3>
         <?php
      
}

      
/**
       * Show a form where users can enter their license key
       *
       * @param boolean $embedded Boolean indicating whether this form is embedded in another form?
       */
      
public function show_license_form$embedded true ) {
         
$key_name    $this->prefix 'license_key';
         
$nonce_name  $this->prefix 'license_nonce';
         
$action_name $this->prefix 'license_action';

         
$api_host_available $this->get_api_availability();

         
$visible_license_key $this->get_license_key();

         
// obfuscate license key
         
$obfuscate = ( strlen$this->get_license_key() ) > && ( $this->license_is_valid() || ! $this->remote_license_activation_failed ) );

         if ( 
$obfuscate ) {
            
$visible_license_key str_repeat'*'strlen$this->get_license_key() ) - ) . substr$this->get_license_key(), - );
         }

         
// make license key readonly when license key is valid or license is defined with a constant
         
$readonly = ( $this->license_is_valid() || $this->license_constant_is_defined );

         require 
dirname__FILE__ ) . '/views/form.php';

         
// enqueue script in the footer
         
add_action'admin_footer', array( $this'output_script' ), 99 );
      }

      
/**
       * Check if the license form has been submitted
       */
      
public function catch_post_request() {

         
$name $this->prefix 'license_key';

         
// check if license key was posted and not empty
         
if ( ! isset( $_POST$name ] ) ) {
            return;
         }

         
// run a quick security check
         
$nonce_name $this->prefix 'license_nonce';

         if ( ! 
check_admin_referer$nonce_name$nonce_name ) ) {
            return;
         }

         
// @TODO: check for user cap?

         // get key from posted value
         
$license_key $_POST$name ];

         
// check if license key doesn't accidentally contain asterisks
         
if ( strstr$license_key'*' ) === false ) {

            
// sanitize key
            
$license_key trimsanitize_key$_POST$name ] ) );

            
// save license key
            
$this->set_license_key$license_key );
         }

         
// does user have an activated valid license
         
if ( ! $this->license_is_valid() ) {

            
// try to auto-activate license
            
return $this->activate_license();

         }

         
$action_name $this->prefix 'license_action';

         
// was one of the action buttons clicked?
         
if ( isset( $_POST$action_name ] ) ) {

            
$action trim$_POST$action_name ] );

            switch ( 
$action ) {
               case 
'activate':
                  return 
$this->activate_license();

               case 
'deactivate':
                  return 
$this->deactivate_license();
            }

         }

      }

      
/**
       * Output the script containing the YoastLicenseManager JS Object
       *
       * This takes care of disabling the 'activate' and 'deactivate' buttons
       */
      
public function output_script() {
         require_once 
dirname__FILE__ ) . '/views/script.php';
      }

      
/**
       * Set the constant used to define the license
       *
       * @param string $license_constant_name The license constant name
       */
      
public function set_license_constant_name$license_constant_name ) {
         
$this->license_constant_name trim$license_constant_name );
         
$this->maybe_set_license_key_from_constant();
      }

      
/**
       * Get the API availability information
       *
       * @return array
       */
      
protected function get_api_availability() {
         return array(
            
'url'          => $this->product->get_api_url(),
            
'availability' => $this->check_api_host_availability(),
            
'curl_version' => $this->get_curl_version(),
         );
      }

      
/**
       * Check if the API host address is available from this server
       *
       * @return bool
       */
      
private function check_api_host_availability() {
         
$wp_http = new WP_Http();
         if ( 
$wp_http->block_request$this->product->get_api_url() ) === false ) {
            return 
true;
         }

         return 
false;
      }

      
/**
       * Get the current curl version, or false
       *
       * @return mixed
       */
      
protected function get_curl_version() {
         if ( 
function_exists'curl_version' ) ) {
            
$curl_version curl_version();

            if ( isset( 
$curl_version['version'] ) ) {
               return 
$curl_version['version'];
            }
         }

         return 
false;
      }

      
/**
       * Maybe set license key from a defined constant
       */
      
private function maybe_set_license_key_from_constant() {

         if ( empty( 
$this->license_constant_name ) ) {
            
// generate license constant name
            
$this->set_license_constant_namestrtoupperstr_replace( array(
                  
' ',
                  
'-'
               
), ''sanitize_key$this->product->get_item_name() ) ) ) . '_LICENSE' );
         }

         
// set license key from constant
         
if ( defined$this->license_constant_name ) ) {

            
$license_constant_value constant$this->license_constant_name );

            
// update license key value with value of constant
            
if ( $this->get_license_key() !== $license_constant_value ) {
               
$this->set_license_key$license_constant_value );
            }

            
$this->license_constant_is_defined true;
         }
      }

      
/**
       * Determine what message should be shown for a successful license activation
       *
       * @param Object $result Result of a request.
       *
       * @return string
       */
      
protected function get_successful_activation_message$result ) {
         
// Get expiry date.
         
if ( isset( $result->expires ) ) {
            
$this->set_license_expiry_date$result->expires );
            
$expiry_date strtotime$result->expires );
         } else {
            
$expiry_date false;
         }

         
// Always show that it was successful.
         
$message sprintf__"Your %s license has been activated. "$this->product->get_text_domain() ), $this->product->get_item_name() );

         
// Show a custom notice it is an unlimited license.
         
if ( $result->license_limit == ) {
            
$message .= __"You have an unlimited license. "$this->product->get_text_domain() );
         } else {
            
$message .= sprintf_n"You have used %d/%d activation. ""You have used %d/%d activations. "$result->license_limit$this->product->get_text_domain() ), $result->site_count$result->license_limit );
         }

         
// add upgrade notice if user has less than 3 activations left
         
if ( $result->license_limit && ( $result->license_limit $result->site_count ) <= ) {
            
$message .= sprintf__'<a href="%s">Did you know you can upgrade your license?</a> '$this->product->get_text_domain() ), $this->product->get_extension_url'license-nearing-limit-notice' ) );
         }

         if ( 
$expiry_date !== false && $expiry_date strtotime"+1 month" ) ) {
            
// Add extend notice if license is expiring in less than 1 month.
            
$days_left round( ( $expiry_date time() ) / 86400 );
            
$message .= sprintf_n'<a href="%s">Your license is expiring in %d day, would you like to extend it?</a> ''<a href="%s">Your license is expiring in %d days, would you like to extend it?</a> '$days_left$this->product->get_text_domain() ), $this->product->get_extension_url'license-expiring-notice' ), $days_left );
         }

         return 
$message;
      }

      
/**
       * Determine what message should be shown for an unsuccessful activation
       *
       * @param Object $result Result of a request.
       *
       * @return string
       */
      
protected function get_unsuccessful_activation_message$result ) {
         
// Default message if we cannot detect anything more specific.
         
$message __'Failed to activate your license, your license key seems to be invalid.'$this->product->get_text_domain() );

         if ( ! empty( 
$result->error ) ) {
            switch ( 
$result->error ) {
               
// Show notice if user is at their activation limit.
               
case 'no_activations_left':
                  
$message sprintf__'You\'ve reached your activation limit. You must <a href="%s">upgrade your license</a> to use it on this site.'$this->product->get_text_domain() ), $this->product->get_extension_url'license-at-limit-notice' ) );
                  break;

               
// Show notice if the license is expired.
               
case 'expired':
                  
$message sprintf__'Your license has expired. You must <a href="%s">extend your license</a> in order to use it again.'$this->product->get_text_domain() ), $this->product->get_extension_url'license-expired-notice' ) );
                  break;
            }
         }

         return 
$message;
      }

      
/**
       * Get the locale for the current user
       *
       * @return string
       */
      
protected function get_user_locale() {
         if ( 
function_exists'get_user_locale' ) ) {
            return 
get_user_locale();
         }

         return 
get_locale();
      }

      
/**
       * Parse custom HTML message from response
       *
       * @param Object $result Result of the request.
       *
       * @return string
       */
      
protected function get_custom_message$result ) {
         
$message '';

         
// Allow for translated messages to be used.
         
$localizedDescription 'custom_message_' $this->get_user_locale();
         if ( ! empty( 
$result->{$localizedDescription} ) ) {
            
$message $result->{$localizedDescription};
         }

         
// Fall back to non-localized custom message if no locale has been provided.
         
if ( empty( $message ) && ! empty( $result->custom_message ) ) {
            
$message $result->custom_message;
         }

         
// Make sure we limit the type of HTML elements to be displayed.
         
if ( ! empty( $message ) ) {
            
$message wp_kses$message, array(
               
'a' => array(
                  
'href'   => array(),
                  
'target' => array(),
                  
'title'  => array()
               ),
                    
'br' => array(),
            ) );

            
// Make sure we are on a new line.
            
$message '<br />' $message;
         }

         return 
$message;
      }
   }

}
و یک فایل دیگر رو هم میتوانید تغییر بدید :

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

کد PHP:

<?php
if ( ! defined'ABSPATH' ) ) {
    
header'HTTP/1.0 403 Forbidden' );
    die;
}

/**
 * @var Yoast_Product $product
 */
$product $this->product;

$this->show_license_form_heading();

if( 
$api_host_available['availability'] === false ){
    echo 
'<div class="notice notice-error inline yoast-notice-error"><p>' sprintf__'We couldn\'t create a connection to our API to verify your license key(s). Please ask your hosting company to allow outgoing connections from your server to %s.'$product->get_text_domain() ), $api_host_available['url'] ) . '</p></div>';
}

if( 
$api_host_available['curl_version'] !== false && version_compare$api_host_available['curl_version'], '7.20.0''<')){
    echo 
'<div class="notice notice-error inline yoast-notice-error"><p>' sprintf__'Your server has an outdated version of the PHP module cURL (Version: %s). Please ask your hosting company to update this to a recent version of cURL. You can read more about that in our %sKnowledge base%s.'$product->get_text_domain() ), $api_host_available['curl_version'], '<a href="http://kb.yoast.com/article/90-is-my-curl-up-to-date" target="_blank">''</a>' ) . '</p></div>';
}

// Output form tags if we're not embedded in another form
if( ! $embedded ) {
    echo 
'<form method="post" action="">';
}

wp_nonce_field$nonce_name$nonce_name ); ?>
<table class="form-table yoast-license-form">
    <tbody>
        <tr valign="top">
            <th scope="row" valign="top"><?php _e'License status'$product->get_text_domain() ); ?></th>
            <td>
                <?php if ( ! $this->license_is_valid() ) { ?>
                <span class="yoast-license-status-active"><?php _e'ACTIVE'$product->get_text_domain() ); ?></span> &nbsp; - &nbsp; <?php _e'you are receiving updates.'$product->get_text_domain() ); ?>
                <?php } else { ?>
                <span class="yoast-license-status-inactive"><?php _e'INACTIVE'$product->get_text_domain() ); ?></span> &nbsp; - &nbsp; <?php _e'you are <strong>not</strong> receiving updates.'$product->get_text_domain() ); ?>
                <?php ?>
            </td>
        </tr>
        <tr valign="top">
            <th scope="row" valign="top"><?php _e('Toggle license status'$product->get_text_domain() ); ?></th>
            <td class="yoast-license-toggler">

                <?php if( $this->license_is_valid() ) { ?>
                    <button name="<?php echo esc_attr$action_name ); ?>" type="submit" class="button button-secondary yoast-license-deactivate" value="deactivate"><?php echo esc_html_e'Deactivate License'$product->get_text_domain() ); ?></button> &nbsp;
                    <small><?php _e'(deactivate your license so you can activate it on another WordPress site)'$product->get_text_domain() ); ?></small>
                <?php } else {

                    if( 
$this->get_license_key() !== '') { ?>
                        <button name="<?php echo esc_attr$action_name ); ?>" type="submit" class="button button-secondary yoast-license-activate" value="activate" /><?php echo esc_html_e('Activate License'$product->get_text_domain() ); ?></button> &nbsp;
                    <?php } else {
                        
_e'شما در این نسخه نیازی به وارد کردن لایسنس یا تغییر آن ندارید .'$product->get_text_domain() );
                    }

                } 
?>

            </td>
        </tr>
        <tr valign="top">
            <th scope="row" valign="top"><?php _e'License Key'$product->get_text_domain() ); ?></th>
            <td>
                <input name="<?php echo esc_attr$key_name ); ?>" type="text" class="regular-text textinput yoast-license-key-field <?php if( $obfuscate ) { ?>yoast-license-obfuscate<?php ?>" value="p30web.org" disabled />
                <?php if( $this->license_constant_is_defined ) { ?>
                <p class="help"><?php printf__"You defined your license key using the %s PHP constant."$product->get_text_domain() ), '<code>' $this->license_constant_name '</code>' ); ?></p>
                <?php ?>
            </td>
        </tr>

    </tbody>
</table>

<?php

if( $this->license_is_valid() ) {

    
$expiry_date strtotime$this->get_license_expiry_date() );

    if( 
$expiry_date !== false ) {
        echo 
'<p>';

        
printf__'Your %s license will expire on %s.'$product->get_text_domain() ), $product->get_item_name(), date('F jS Y'$expiry_date ) );

        if( 
strtotime'+3 months' ) > $expiry_date ) {
            
printf' ' __('%sRenew your license now%s.'$product->get_text_domain() ), '<a href="'$this->product->get_tracking_url'renewal' ) .'">''</a>' );
        }

        echo 
'</p>';
    }
}

// Only show a "Save Changes" button and end form if we're not embedded in another form.
if( ! $embedded ) {

    
// only show "Save Changes" button if license is not activated and not defined with a constant
    
if( $readonly === false && $api_host_available['availability'] === true ) {
        
submit_button();
    }

    echo 
'</form>';
}

$product null;
نمونه کدهای بالا در کل میتواند راهنمای خوبی باشه برای شما .

سئوالی بود ، میتوانید در ادامه مطرح کنید .

امیدوارم مفید واقع شده باشد .
برچسب ها: هیچ یک ویرایش برچسب ها
دسته بندی ها
دسته بندی نشده

نظرات

Designed With Cooperation

Of Creatively