WordPress tartalom kezelő rendszer (CMS) - Szoftverfejlesztés fórum

üzenetek

hozzászólások


miqlas
(őstag)

... amire kell, arra az átlagos pont megfelelõ!

Köszi az infót! :R


kuyarashi
(őstag)

Sziasztok,

Azt szeretném megoldani WooCommerce-ben, hogy az adott (variables) terméken belül legyen 2 kis szövegmező, ahová a megrendelő egyedi számokat tud beírni (szélesség, magasság). Tehát van mondjuk 3 változó, amelyek közül gombokkal tud választani (eddig oké), s ezek alatt volna még a 2 beviteli szövegmező, amelyek egyébként nem volnának hatással az árra.
Nem találtam ehhez beépített funkciót, de jobb volna így megoldani, mint újabb bővítményt telepíteni. Persze ez is megfelel.

Előre is köszönöm.


adatfalo
(senior tag)

Szia!

Vagy pluginnal, pl: Product Input Fields for WooCommerce és társai.

Vagy kóddal, ez egy példa, functions.php-ba kell betenni és személyre szabni:

// Egyedi mezők hozzáadása a termék oldalra
add_action('woocommerce_before_add_to_cart_button', 'custom_product_fields', 10);
function custom_product_fields() {
    echo '<div class="custom-fields">';
    echo '<input type="text" name="custom_field_1" placeholder="Custom Field 1">';
    echo '<input type="text" name="custom_field_2" placeholder="Custom Field 2">';
    echo '</div>';
}
// Az egyedi mezők értékeinek mentése
add_filter('woocommerce_add_cart_item_data', 'save_custom_fields', 10, 2);
function save_custom_fields($cart_item_data, $product_id) {
    if(isset($_POST['custom_field_1'])) {
        $cart_item_data['custom_field_1'] = sanitize_text_field($_POST['custom_field_1']);
    }
    if(isset($_POST['custom_field_2'])) {
        $cart_item_data['custom_field_2'] = sanitize_text_field($_POST['custom_field_2']);
    }
    return $cart_item_data;
}
// Az egyedi mezők megjelenítése a kosárban és a pénztárnál
add_filter('woocommerce_get_item_data', 'display_custom_fields', 10, 2);
function display_custom_fields($item_data, $cart_item) {
    if(array_key_exists('custom_field_1', $cart_item)) {
        $item_data[] = array(
            'name' => 'Custom Field 1',
            'value' => $cart_item['custom_field_1']
        );
    }
    if(array_key_exists('custom_field_2', $cart_item)) {
        $item_data[] = array(
            'name' => 'Custom Field 2',
            'value' => $cart_item['custom_field_2']
        );
    }
    return $item_data;
}
// Az egyedi mezők hozzáadása az e-mail értesítésekhez
add_action('woocommerce_checkout_create_order_line_item', 'custom_fields_in_order_emails', 10, 4);
function custom_fields_in_order_emails($item, $cart_item_key, $values, $order) {
    if(array_key_exists('custom_field_1', $values)) {
        $item->add_meta_data('Custom Field 1', $values['custom_field_1']);
    }
    if(array_key_exists('custom_field_2', $values)) {
        $item->add_meta_data('Custom Field 2', $values['custom_field_2']);
    }
}


kuyarashi
(őstag)

Nagyon köszi, ki fogom próbálni.


inf3rno
(nagyúr)
Blog

Elementornál kapunk egy 500-as hibát közzétételnél mióta átneveztük az oldalt. Azóta visszaneveztük, de az sem oldotta meg. Bármi tippetek van erre?


sz.j
(nagyúr)

Tudom, hogy itt off, de megkérdezem hátha tud valaki segíteni ...

HTML-el készült "hagyományos" weboldalhoz tud valaki valami egyszerű GDPR megoldást?


inf3rno
(nagyúr)
Blog

Biztos, hogy használsz sütiket? Ha nem, akkor nem kell. Ha igen, akkor beállítasz egy cookiet így: [link] ha rákattint a gombra [link], és ha jelen van a cookie, akkor elrejted a cookie bannert display: none-al. [link]

Valami ilyesmi:

<div class="cookie_banner">
<button class="cookie_banner_accept">
Minden sütit elfogadok!!!
</button>
</div>

<style>
.cookie_banner.accepted {
display: none;
}
</style>

<script>
document.addEventListener("DOMContentLoaded", function (){
var banner = document.querySelector(".cookie_banner");
var button = document.querySelector(".cookie_banner_accept");
button.addEventListener("click", function (){
var nextYear = new Date();
nextYear.setFullYear(nextYear.getFullYear()+1);
document.cookie = 'accepted=1; expires=' + nextYear.toUTCString() + ';';
banner.classList.add("accepted");
})
if (document.cookie.indexOf("accepted=1") !== -1)
banner.classList.add("accepted");
});
</script>

[ Szerkesztve ]


sz.j
(nagyúr)

"Biztos, hogy használsz sütiket?"
Hogy őszinte legyek nem tudom .... :B

Amúgy köszönöm az infót, átnézem.

[ Szerkesztve ]


inf3rno
(nagyúr)
Blog

Közben módosítottam. Ránézésre nem használsz semmit, úgyhogy talán nem fog kelleni. Főleg ha csak saját célra használod. Hivatalosan amúgy GDPR-os tájékoztatóba bele kell írni a sütiket, úgyhogy egy bonyolultabb jogi procedúra is jár mellé, illetve a gombnál is lehet választani, hogy mit engedsz meg és mit nem.

[ Szerkesztve ]


sz.j
(nagyúr)

Nem bánnám ha nem kellene, mert ha Wordpress alapú lenne az oldal akkor egy pluginnal gyorsan megoldható lenne, de mivel nem az és ráadásul én sem értek hozzá így csak reménykedek, hogy jó lesz GDPR nélkül is.


adatfalo
(senior tag)

Ahogy láttam nem használsz cookie-kat. A böngészősávban a kis lakatra kattintva a Cookie-k és webhelyadatok ponton kilistázza, hogy az adott oldal milyen cookiekat használ. A tiéd nem használ semmilyet.


sz.j
(nagyúr)

Köszi az infót!


CharlieDrop
(veterán)

A GDPR megfelelősség nem csak a cookie-k miatt kell.

de ahogy elnézem ezen az oldalon semmi olyan nincs ami miatt kellene

[ Szerkesztve ]


inf3rno
(nagyúr)
Blog

Az adok-veszek részhez lehetne, de túlzás lenne.


inf3rno
(nagyúr)
Blog

Ez valszeg valami memory leak volt, vagy passz. A memória elfogyott, úgyhogy megdupláztam. Most működik. Gondolom nem valami gazdaságosan kezeli a memóriát a WP. Ha ennyire fel tud menni, akkor nagyobb forgalmú oldalaknál elég nagy szívás lehet optimalizálni.


CharlieDrop
(veterán)

Nem feltétlenül WP, inkább a bővítmények.


inf3rno
(nagyúr)
Blog

Elementoros szerkesztői felületen volt, úgyhogy esetleg az nyelheti be a memóriát. Esetleg localhoston megpróbálhatom elemezni, úgy rémlik PHP-nek volt ilyen erőforrás elemzője, amit külön kellett telepíteni hozzá. De most mással vagyok elfoglalva...


adatfalo
(senior tag)

Én csak azt írtam le, hogy hogyan tudja ellenőrizni, hogy használ-e cookie-kat és ha igen miket. :U


CharlieDrop
(veterán)

Persze. Az volt. Szokott ilyet.


miqlas
(őstag)

Régi, 5-6 éves backupból lehet wordpress oldalt localhost-on használni? Szükségem lenne pár dologra, de ezt csak úgy tudnám kinyerni, ha „vissza hoznám az életbe” egy-két hétre!

üzenetek