fredag 3 juni 2016

WooCommerce'de /ürün ve /ürün-kategorisini kaldırmak

WooCommerce'de cikan kalıcı bağlantılarda /ürün ve /ürün-kategori linklerini kaldırmak icin asagikdaki kodu temanizin function.php dosyaniza yapistirin.

add_action('init','change_category_base');



function change_category_base( $args ){
        $define = true;
        global $wp_rewrite, $wp_taxonomies;
        //change rewrite slug value for the taxonomy
        if( isset( $wp_taxonomies['product_cat'] ) )
            $wp_taxonomies['product_cat']->rewrite['slug'] = '';

        if( isset( $wp_rewrite->extra_permastructs['product_cat'] ) ){
            if( array_key_exists( 'struct', $wp_rewrite->extra_permastructs['product_cat'] ) ) $wp_rewrite->extra_permastructs['product_cat']['struct'] = '%product_cat%';
            else $wp_rewrite->extra_permastructs['product_cat']['0'] = '%product_cat%';
        }
        if ($define) {
        global $wp_rewrite;
        $wp_rewrite->flush_rules( false );
        }
}

add_filter('rewrite_rules_array', 'create_category_rules');
function create_category_rules($rules){

        //These rules are generated from changing the product category base to nothing and conflict with wordpress pages
        unset( $rules['(.+?)/feed/(feed|rdf|rss|rss2|atom)/?$'] );
        unset( $rules['(.+?)/(feed|rdf|rss|rss2|atom)/?$'] );
        unset( $rules['(.+?)/page/?([0-9]{1,})/?$'] );
        unset( $rules['(.+?)/?$'] );

        //Generate rules for each product category
        $args = array( 'hide_empty' => 0 );
        $categories = get_terms( 'product_cat', $args );

        $category_rules = array();
        foreach( $categories as $category ){

            $link = str_ireplace(site_url("/"), "", rtrim(get_term_link($category), "/"));

            $category_rules["($link)/feed/(feed|rdf|rss|rss2|atom)/?$"] = 'index.php?product_cat=$matches[1]&feed=$matches[2]';
            $category_rules["($link)/(feed|rdf|rss|rss2|atom)/?$"] = 'index.php?product_cat=$matches[1]&feed=$matches[2]';
            $category_rules["($link)/page/?([0-9]{1,})/?$"] = 'index.php?product_cat=$matches[1]&paged=$matches[2]';
            $category_rules["($link)/?$"] = 'index.php?product_cat=$matches[1]';

        }

        $rules = $category_rules + $rules;


    return $rules;
}



remove_filter( 'post_type_link', 'wc_product_post_type_link' );

function wc_custom_product_post_type_link( $permalink, $post ) {
    // Abort if post is not a product
    if ( $post->post_type !== 'product' )
        return $permalink;

    // Abort early if the placeholder rewrite tag isn't in the generated URL
    if ( false === strpos( $permalink, '%' ) )
        return $permalink;

    // Get the custom taxonomy terms in use by this post
    $terms = get_the_terms( $post->ID, 'product_cat' );

    if ( empty( $terms ) ) {
        // If no terms are assigned to this post, use a string instead (can't leave the placeholder there)
        $product_cat = _x( 'uncategorized', 'slug', 'woocommerce' );
        $product_sub_cat = '';
    } else {
        // Replace the placeholder rewrite tag with the first term's slug
        $first_term = 0;
        foreach ( $terms  as $term) {
            if ($term->parent == '' ) {
                $first_term = $term;
                break;
            }
        }
        if($first_term){
            $product_cat = $first_term->slug;
            $termchildren = get_term_children( $first_term->term_id, 'product_cat' );
            $child_term = get_term( array_shift($termchildren), 'product_cat' );
            $product_sub_cat = $child_term->slug;
        }
    }

    $find = array(
        '%year%',
        '%monthnum%',
        '%day%',
        '%hour%',
        '%minute%',
        '%second%',
        '%post_id%',
        '%category%',
        '%product_cat%',
        '%product_sub_cat%'
    );

    $replace = array(
        date_i18n( 'Y', strtotime( $post->post_date ) ),
        date_i18n( 'm', strtotime( $post->post_date ) ),
        date_i18n( 'd', strtotime( $post->post_date ) ),
        date_i18n( 'H', strtotime( $post->post_date ) ),
        date_i18n( 'i', strtotime( $post->post_date ) ),
        date_i18n( 's', strtotime( $post->post_date ) ),
        $post->ID,
        $product_cat,
        $product_cat,
        $product_sub_cat
    );

    $replace = array_map( 'sanitize_title', $replace );

    $permalink = str_replace( $find, $replace, $permalink );

    return $permalink;
}
add_filter( 'post_type_link', 'wc_custom_product_post_type_link', 10, 2 );


function get_slugs($id) {
  remove_filter( 'post_link', 'custom_permalinks_post_link', 'edit_files', 2 ); // original hook
  remove_filter( 'post_type_link', 'custom_permalinks_post_link', 'edit_files', 2 );
  $originalPermalink = ltrim(str_replace(home_url(), '', get_permalink( $post_id )), '/');
  add_filter( 'post_link', 'custom_permalinks_post_link', 'edit_files', 2 ); // original hook
  add_filter( 'post_type_link', 'custom_permalinks_post_link', 'edit_files', 2 );
  return $originalPermalink;
}


function on_save_post($id) {
$character_lenght = "6";
$permalink = get_permalink($id);
if (strpos($permalink,'/product/') == false) {
return;
}
 
  delete_post_meta( $id, 'custom_permalink' );
 $postn = get_post($id);
$slugnew = get_permalink($id);
$ogslug = substr($slugnew, strpos($slugnew, "co.uk/") + $character_lenght);
  $original_link = get_slugs($id);
  $permalink_structure = get_option('permalink_structure');
$terms = get_the_terms( $id, 'product_cat' );
$terms2 = get_the_terms( $id, 'product_cat' );
if (! (empty($terms) and empty($terms2))) {
foreach ($terms as $term) {
    $pcategory = $term->slug;
   break;
}


foreach ($terms2 as $term1) {
    $scategory = $term1->slug;


}
}
if ($scategory !== $pcategory) {
 $add_sub = str_replace('product/', '', $ogslug);
 $new_permalink = str_replace($pcategory, 'tyinput', $add_sub,$count1);
 $new_permalink = str_replace('tyinput', $pcategory.'/'.$scategory, $new_permalink,$count);
} else {

 $new_permalink = str_replace('product/', '', $ogslug);
}


  if ("1" == "1") {
      add_post_meta( $id, 'custom_permalink', str_replace('%2F', '/', urlencode(ltrim(stripcslashes($new_permalink),"/"))) );
  }
}
add_action('save_post','on_save_post'); 

Woocommerce eklentisiz indirim orani etiketi

Wordpress woocommerce sayfalariniza eklentisiz indirim orani etiketi eklemek icin asagidaki kodu tema klasörunuz icindeki function.php dosyasina yapistiriniz.
 <?php
add_filter( 'woocommerce_sale_price_html', 'woocommerce_sales_price_percentage', 10, 2 );
function woocommerce_sales_price_percentage( $price, $product ) {
 $percentage = round( ( ( $product->regular_price - $product->sale_price ) / $product->regular_price ) * 100 );
 return $price . sprintf( __(' - Save %s', 'woocommerce' ), $percentage . '%' );
}
?>

Sonuc;

tisdag 5 april 2016

Windows 10 Fotoğraf Görüntüleyici Ayarları Nasıl Yapılır

Windows 10'da .jpe .jpeg .jpg .png .tif .tiff uzantılı fotoğrafları eski Windows fotoğraf görüntüleyicisi ile Açmak icin asagidaki dosyayi indirerek calistiriniz. Windows Fotoğraf Görüntüleyici İndir : https://yadi.sk/d/4tTJtiV9jZ2sP

söndag 13 mars 2016

Wordpress'te eklentisiz iletişim sayfası yapımı

Merhaba arkadaşlar bugün sizlere php ile eklentisiz wordpress'e nasıl iletişim formu yapabiliriz onu göstereceğim .

Not : Bu yazıdaki kodlar vs herşeyi kendim yazdım kopyalama alıntı başka bir siteden kopyalama vb. birşey yoktur (İzinsiz paylaşılamaz bu makale)

Not 2: Görselliğe pek önem vermedim onu siz css ile düzenlersiniz veya vaktim olduğunda ben şimdiki halinden daha güzel bir hale getirmeye çalışırım ..

fredag 4 mars 2016

Wordpress sitenize kar yağdırma eklentileri

Siteleriniz için wordpress eklenti sayfasından indirebileceğiniz kar yağışı eklentilerinden sitenize uygun olanını kullanabilirsiniz.

WordPress kar yağdırma eklentisi indirme sayfaları:

Popüler jquery efektleri ile wordpress kar yağdırma eklentileri indirme linkleri:
Snow storm
Snow effect for wordpress using jquery
WP snow effect
Snow, balloons
 yiWP kar yağışı

Bu eklenti wordpress site için düşen kar etkisini yaratacaktır. Bu eklentiyi yapılandırmaya gerek yoktur. Eğer arka planı koyu yapmak istiyorsanız sitenize özel css ekleyebilirsiniz.

Örneğin:
body{ background: #333; } kodunu kullanabilirsiniz