• 22-07-2018, 17:58:47
    #1
    Arkadaşlar,

    elimde wordpress bir veritabanı var. Post sayfalarındaki img class'ını aşağıdaki şekilde değiştirmek için ne tür bir script yazılabilir ? Mysql'den mi yoksa php'den mi yapılması daha doğru olur ?
    İlk yazdığım kod mevcut kod. İkincisi ise olmasını istediğim.

    <img class="alignnone size-full lazyload"
    src="wp-content/uploads/2018/07/abc.jpeg"
    alt="alt tag değişmeyecek"
    width="570"
    height="801"
    data-frizzly-image-share-facebook="http://www.facebook.com/silinecek"
    data-frizzly-image-share-twitter="https://twitter.com/silinecek"
    data-frizzly-image-post-id="123"
    data-recalc-dims="1"
    data-src="wp-content/uploads/2018/07/xyz.jpeg">
    <img class="alignnone size-full"
    src="wp-content/uploads/2018/07/xyz.jpeg"
    alt="alt tag değişmeyecek"
    width="570"
    height="801"
    >
    Özet ile :
    1. class ismindeki lazyload silinecek.
    2. src abc.jpg yerine, data-src'da yazan xyz.jpeg ile değişecek.
    3. alt width ve height değişmeyecek.
    4. data-frizzly-image-share-facebook silinecek.
    5. data-frizzly-image-share-twitter silinecek.
    6. data-frizzly-image-post-id silinecek.
    7. data-recalc-dims silinecek.
    8. data-src de silinecek.
    Daha önceden buna benzer bir script yazmış olan var ise yardımcı olabilirse çok sevinirim.

    Edit :
    @orion35; yazdığı script ile yukarıdaki sorunun cevabı verilmştir. Başkasına da lazım olursa diye mesajı revize ediyorum.
    <script type="text/javascript">
    jQuery(function($){
    $('article.status-publish').find('img').each(function(){
    $(this).removeClass('lazyload');
    var datasrc = $(this).data('src');
    $(this).attr('src',datasrc);
    $(this).removeAttr('data-frizzly-image-share-facebook');
    $(this).removeAttr('data-frizzly-image-share-twitter');
    $(this).removeAttr('data-frizzly-image-post-id');
    $(this).removeAttr('data-recalc-dims');
    $(this).removeAttr('data-src');
    });
    });
    </script>
  • 23-07-2018, 00:59:28
    #2
    Aşağıdaki sorguyu phpmyadmin SQL dan çalıştırarak bir kısmını düzeltebilirsin..

    UPDATE wp_posts SET post_content = replace(post_content, 'eski yazı', 'yeni yazı');
    diğer işlemleride wordpress sql sorguları şeklinde arama yaparak çözebilirsin. İngilizce olarak aratırsan daha çok kaynak bulabilirsin.
  • 23-07-2018, 01:05:16
    #3
    ozgurland adlı üyeden alıntı: mesajı görüntüle
    Aşağıdaki sorguyu phpmyadmin SQL dan çalıştırarak bir kısmını düzeltebilirsin..

    UPDATE wp_posts SET post_content = replace(post_content, 'eski yazı', 'yeni yazı');
    diğer işlemleride wordpress sql sorguları şeklinde arama yaparak çözebilirsin. İngilizce olarak aratırsan daha çok kaynak bulabilirsin.
    Hocam cevap için teşekkür ederim. Yukarıdaki ilk sorduğum soruya ihtiyacım kalmadı. Farklı yöntemler uyguladım.
    Sizin gönderdiğiniz kodu sık sık kullanıyorum fakat bu verdiğiniz kod yukarıdaki soruma tam anlamı ile otomatik update etmez. (Değişken yapı var soruda dikkat ettiyseniz.)

    Ben soruyu biraz daha değiştirip şu şekilde sormaya çalışayım. Hatta sizin cevabınıza yakın bir soru.
    aşağıdaki gibi bir html kod bloğu var. Ama gereksiz bu kodlar ve wp_post tablosundaki post_content field'ından bunları silmek istiyorum.
    Kodlar yanyana olmadığı için direkt replace edemiyorum. iki center arasında 1 satır boşluk var. (r10 editörü boşlukları silebilir o yüzden görünmeyebilir.) ve sonunda da div var. O yüzden bu 4 satırı (boşluklu satırlar ile birlikte 5 satır) komple nasıl replace edebiliriz ?

    <div class="sınıfadı1 sınıfadı-2" style="padding: 10px 0; clear: both;">
    <center>

    </center>
    </div>

    ya da buna nasıl bir regex yazılabilir ?
    "Div class ile başlayıp, içinde sınıfadı1 ve sınıfadı2 olan satırdan, ilk kapanan div'e kadar sil" gibi.
  • 23-07-2018, 01:18:24
    #4
    ResimBox adlı üyeden alıntı: mesajı görüntüle
    Hocam cevap için teşekkür ederim. Yukarıdaki ilk sorduğum soruya ihtiyacım kalmadı. Farklı yöntemler uyguladım.
    Sizin gönderdiğiniz kodu sık sık kullanıyorum fakat bu verdiğiniz kod yukarıdaki soruma tam anlamı ile otomatik update etmez. (Değişken yapı var soruda dikkat ettiyseniz.)

    Ben soruyu biraz daha değiştirip şu şekilde sormaya çalışayım. Hatta sizin cevabınıza yakın bir soru.
    aşağıdaki gibi bir html kod bloğu var. Ama gereksiz bu kodlar ve wp_post tablosundaki post_content field'ından bunları silmek istiyorum.
    Kodlar yanyana olmadığı için direkt replace edemiyorum. iki center arasında 1 satır boşluk var. (r10 editörü boşlukları silebilir o yüzden görünmeyebilir.) ve sonunda da div var. O yüzden bu 4 satırı (boşluklu satırlar ile birlikte 5 satır) komple nasıl replace edebiliriz ?

    <div class="sınıfadı1 sınıfadı-2" style="padding: 10px 0; clear: both;">
    <center>

    </center>
    </div>

    ya da buna nasıl bir regex yazılabilir ?
    "Div class ile başlayıp, içinde sınıfadı1 ve sınıfadı2 olan satırdan, ilk kapanan div'e kadar sil" gibi.
    Aslında bunun için Database SQL konusundan anlayan kişilerin yardımına ihtiyacın var. Database kategorisindeki uzman kişilere mesaj atarak sormayı dene istersen.
  • 23-07-2018, 03:21:39
    #5
    Onların SQL'le alakası yok, sayfa yüklendikten sonra javascript'le eklenmişler..
    Sen de şu kod bloğunu footer.php'de </body> etiketinin hemen öncesine eklersen istediklerini başarmış olursun..

    <script type="text/javascript">
    jQuery(function($){
    $('article.status-publish').find('img').each(function(){
    $(this).removeClass('lazyload');
    var datasrc = $(this).data('src');
    $(this).attr('src',datasrc);
    $(this).removeAttr('data-frizzly-image-share-facebook');
    $(this).removeAttr('data-frizzly-image-share-twitter');
    $(this).removeAttr('data-frizzly-image-post-id');
    $(this).removeAttr('data-recalc-dims');
    $(this).removeAttr('data-src');
    });
    });
    </script>
  • 23-07-2018, 08:40:34
    #6
    İlk mesajımdaki soruya cevap oldu. Kod ve script için çok teşekkür ederim.
    İkinci mesajımdaki soru ile ilgili bir fikriniz var mıdır ?

    orion35 adlı üyeden alıntı: mesajı görüntüle
    Onların SQL'le alakası yok, sayfa yüklendikten sonra javascript'le eklenmişler..
    Sen de şu kod bloğunu footer.php'de </body> etiketinin hemen öncesine eklersen istediklerini başarmış olursun..

    <script type="text/javascript">
    jQuery(function($){
    $('article.status-publish').find('img').each(function(){
    $(this).removeClass('lazyload');
    var datasrc = $(this).data('src');
    $(this).attr('src',datasrc);
    $(this).removeAttr('data-frizzly-image-share-facebook');
    $(this).removeAttr('data-frizzly-image-share-twitter');
    $(this).removeAttr('data-frizzly-image-post-id');
    $(this).removeAttr('data-recalc-dims');
    $(this).removeAttr('data-src');
    });
    });
    </script>
  • 23-07-2018, 11:42:30
    #7
    Notepad++ değiştirebilirsin. önce dışarı çıkar düzenle içeri geri aktar