• NODE JS это замена PHP, да?

    @Ofelion
    squadbrodyaga, php и nodejs - два инструмента, которые делают одно и то же.
    PHP - более распространён и более востребован, 80% всех сайтов написано на нём, довольно прост в изучении. Как бы его не критиковали - он всё равно номер ОДИН.
    NODEJS - мне кажется, удобен тому, кто долгое время занимался фронтендом (визуальной частью с использованием javascript) и решил перейти на полный цикл разработки (с бэкэндом). Не придётся изучать новый язык для этого (например, php), а всего лишь новую технологие js (nodejs).

    Но ты, парень, пока сильно лошадей гонишь. html,css - отлично, изучай пока js и разберись для себя - что ты хочешь - фронтендом или бэкэндом заниматься.
    Успехов!
  • Почему при клике на иконки программ программы не запускаются в Ubuntu?

    @Ofelion Автор вопроса
    Delirium с помощью скачанного архива, вручную
  • Почему при клике на иконки программ программы не запускаются в Ubuntu?

    @Ofelion Автор вопроса
    klepiku, спасибо! Я так понимаю, Ubuntu очень проблемная в этом плане?
  • Почему при клике на иконки программ программы не запускаются в Ubuntu?

    @Ofelion Автор вопроса
    В качестве юзера привык уже к Ubuntu, она всё же более функциональная. Но вот такие проблемы заставляют слишком долго искать решение.
  • Как получить ссылку на страницу с деталями заказа в WordPress?

    @Ofelion Автор вопроса
    deadnice, вот такую ссылку я формировал:
    my-site.com/checkout-2/order-pay/24273/?key=wc_order_zEqTopYvTEM9M&order=24273
    Но чтобы она заработала, мне нужен $order, а как его в конструктор параметром передать не пойму
  • Как получить ссылку на страницу с деталями заказа в WordPress?

    @Ofelion Автор вопроса
    deadnice, страницы thankyoupage в модуле нет. В принципе я ссылку смог руками составить, на которую редиректиться будет, это в конструкторе класса прописал. Но нужен параметр, чтобы она заработала - $order_id, который нужно передать в конструктор. Не уверен, что это правильная идея.

    public function __construct(){
    			$this->id 					= 'pscb_payments';
    			$this->title 				= 'Модуль оплаты';
    			$this->description			= 'Модуль оплаты';
    			$this->has_fields 			= false;
    			
    			$this->init_form_fields();
    			$this->init_settings();
    
    			$this->title 			    = $this->settings['title'];
    			$this->description 		    = $this->settings['description'];
    			
    			
    			$this->icon                 = plugins_url( 'assets/img/logo_pscb.svg', __FILE__ );
                
                $this->merchant_id 	        = $this->settings['merchant_id'];
    			$this->merchant_key		    = $this->settings['merchant_key'];
                $this->work_mode            = $this->settings['work_mode'];
                $this->accept_all_payments  = $this->settings['accept_all_payments'];
                $this->send_receipt         = $this->settings['send_receipt'];
                $this->default_tax          = $this->settings['default_tax'];
                $this->success_url          = wc_get_endpoint_url( 'order-received', '', wc_get_page_permalink( 'checkout' ) ); //вот тут была ссылка прописана, сейчас заменил. 
    			$this->fail_url 		    = $this->settings['fail_url'];
                $this->payment_method       = $this->settings['payment_method'];
                $this->hold                 = $this->settings['hold'];
                $this->language             = $this->settings['language'];
                $this->status_pending       = $this->settings['status_pending'];
                $this->status_success       = (isset($this->settings['status_complete']) ? $this->settings['status_complete'] : $this->settings['status_success']);
                $this->status_fail          = (isset($this->settings['status_failed']) ? $this->settings['status_failed'] : $this->settings['status_fail']);
                $this->default_items_type   = $this->settings['default_items_type'];
                $this->default_items_object = $this->settings['default_items_object'];
                $this->default_items_unit   = $this->settings['default_items_unit'];
    			$this->log_level			= $this->settings['log_level'];
                
                $this->msg['message']	    = '';
                $this->msg['class'] 	    = '';
    			
                add_action('woocommerce_api_' . strtolower(get_class($this)), array($this, 'check_oos_response'), 100); //update for woocommerce >2.0
    
                if ( version_compare(WOOCOMMERCE_VERSION, '2.0.0', '>=' ) ) {
    				add_action( 'woocommerce_update_options_payment_gateways_' . $this->id, array( &$this, 'process_admin_options' ) ); //update for woocommerce >2.0
    			} else {
    				add_action( 'woocommerce_update_options_payment_gateways', array( &$this, 'process_admin_options' ) ); // WC-1.6.6
    			}
                
    			add_action('woocommerce_receipt_'.$this->id, array(&$this, 'receipt_page'));
                
    		}
  • Как получить ссылку на страницу с деталями заказа в WordPress?

    @Ofelion Автор вопроса
    Какой функцией или ссылкой формируется эта страница?
  • Как получить ссылку на страницу с деталями заказа в WordPress?

    @Ofelion Автор вопроса
    Антон Р., а какая разница какой модуль? Я спрашиваю за параметры. Мне нужно, чтобы после успешной оплаты возвращалась страница с благодарностью и деталями заказа.
  • Как получить ссылку на страницу с деталями заказа в WordPress?

    @Ofelion Автор вопроса
    Антон Р., Я знаю, что там должно содержаться. Вопрос в том, как вывести страницу Thankyou
  • Как динамически отправлять ajax-запрос?

    @Ofelion Автор вопроса
    Разобрался! WP - штука весьма специфическая. Вот тут инструкция что и как делать в WP.
  • Как динамически отправлять ajax-запрос?

    @Ofelion Автор вопроса
    ThunderCat, значит, всё-таки это wordpress, получается... Спасибо за помощь! Теперь знаю куда копать.
  • Как динамически отправлять ajax-запрос?

    @Ofelion Автор вопроса
    ThunderCat, что-то с путями тут не то..
  • Как динамически отправлять ajax-запрос?

    @Ofelion Автор вопроса
    ThunderCat, вот что в логах указано:

    PHP Fatal error: require(): Failed opening required 'mysite.com/wp-content/themes/mytheme/st_templates/layouts/modern/activity/ajax.php' (include_path='.:/usr/share/php7:/usr/share/php') in /home/t/domenName/public_html/wp-content/themes/mytheme/st_templates/layouts/modern/activity/single/single-3.php on line 719
  • Как динамически отправлять ajax-запрос?

    @Ofelion Автор вопроса
    ThunderCat, вот полный текст:

    Request URL: https://mysite.com/wp-content/themes/mytheme/st_te...
    Request Method: POST
    Status Code: 500 Internal Server Error
    Remote Address: 77.222.61.133:443
    Referrer Policy: no-referrer-when-downgrade
    Connection: keep-alive
    Content-Length: 0
    Content-Type: text/html; charset=utf-8
    Date: Mon, 19 Aug 2019 15:12:08 GMT
    Expires: Tue, 20 Aug 2019 03:12:08 GMT
    Keep-Alive: timeout=10
    Last-Modified: Mon, 19 Aug 2019 15:09:13 GMT
    Server: nginx/1.15.8
    Vary: Accept-Encoding
    X-Powered-By: PHP/7.3.1
    Accept: */*
    Accept-Encoding: gzip, deflate, br
    Accept-Language: ru-RU,ru;q=0.9
    Connection: keep-alive
    Content-Length: 20
    Content-Type: application/x-www-form-urlencoded; charset=UTF-8
    Cookie: __stripe_mid=97ff2f68-9458-4b06-ad0f-117ee5532a0b; _ym_uid=1556606396464521624; _ym_d=1556606396; _ga=GA1.2.1160544915.1556606396; gadwp_wg_default_metric=sessions; gadwp_wg_default_dimension=30daysAgo; gadwp_wg_default_swmetric=sessions; PHPSESSID=ce256fcdadb11c03d72613265edbca77; quform_session_73232fe1bf9a97457e0ee45145e7ec0f=zRKJ41bHItsrFffqQa1N4p7QtC76nCNkMifIblWp; tk_ai=woo%3AY09pgqILJPDeZYjE9qYBmNWe; apbct_site_landing_ts=1557729947; wordpress_test_cookie=WP+Cookie+check; wp-settings-1=libraryContent%3Dbrowse%26edit_element_vcUIPanelWidth%3D1159%26edit_element_vcUIPanelLeft%3D525px%26edit_element_vcUIPanelTop%3D110px%26editor%3Dtinymce%26post_settings_vcUIPanelWidth%3D650%26post_settings_vcUIPanelLeft%3D185px%26post_settings_vcUIPanelTop%3D60px%26hidetb%3D1%26post_dfw%3Doff%26posts_list_mode%3Dexcerpt%26advImgDetails%3Dshow%26mfold%3Do%26editor_plain_text_paste_warning%3D2%26panel_vcUIPanelWidth%3D650%26panel_vcUIPanelLeft%3D1094px%26panel_vcUIPanelTop%3D70px%26editor_expand%3Don%26imgsize%3Dfull%26uploader%3D1; wp-settings-time-1=1564759046; wordpress_logged_in_73232fe1bf9a97457e0ee45145e7ec0f=Tourist+Pro%7C1566547439%7CqqZ1qSpt3oVcbqHzeXOQeBbCNqXQSxEJKbjNdf0MORy%7C2a18c121b19cfad48b7246580c3f6b91bf4798b45a3ebc646ef58504a4472d58; ct_sfw_pass_key=e79e45e893d1231899740046e7381f5f; st_cart=eNp1U9tOxCAQ%2FRXjDwjdbrdlf8Ann3w0IdiiO7GFCkN0Y%2FbfHSC97eobnDlnmMtBCS5%2BQPCy3B%2BOSpTix4tKvNybMLxq93J%2FpNjRiz1Bo4NWE9JFNmElYZ1CRZASRR2VNUHtSbcfEgzBXnBGCKsfePNQMN4krJlJNuCGVRQLi%2B9WuSTCoBMcC%2BF7sWOZVK5z%2Fcuqr1N5VMOYm9tXVVHUFWOR2Nyk2zLL%2BlAvzN62CsEaCZ0cgURhTO%2FFbtKhYFesztlR2re3Le0Qh7vS84KAZ3u2qO4eoQ%2FfCY1NbPR%2F02Jh1oG83laaMaAeVpGyngJe9fpG0sw%2B6NQ5zWAX%2BbMXpP4MMA7aYAqyaSHRFJvYU4wcZllHUwWThrIIq0n4ZzTW2NphAO8zTjWyySUd%2BNYGg9IpzPWzaV5A%2BzOpqezjVF%2Bu4gvwJFF9rxpO%2B%2FIoX639APMuR0sXPI96XhPdW%2BX84tAVG7rFe%2FE7LaKTckTYLj1XHlz2RjCQv0JC07SJwumCtN7%2BZjUxbfDa5Udjb5f8MgL2%2Bl97XC6%2FlGJA0w%3D%3D; wpml_browser_redirect_test=0; apbct_visible_fields=0; apbct_visible_fields_count=0; apbct_prev_referer=https%3A%2F%2Ftouristpro.com%2Factivity%2F%3Fstyle%3D1%26orderby%3Dprice_asc; _icl_current_language=ru; ct_checkjs=816399356; _icl_visitor_lang_js=ru; _ym_isad=1; __stripe_sid=95c539d1-2a55-456a-a51c-7cbb21cc7d47; _ym_visorc_51633644=w; _icl_current_admin_language_d41d8cd98f00b204e9800998ecf8427e=ru; ct_ps_timestamp=1566227251; apbct_timestamp=1566227266; apbct_page_hits=11824; apbct_cookies_test=%257B%2522cookies_names%2522%253A%255B%2522apbct_timestamp%2522%252C%2522apbct_site_landing_ts%2522%252C%2522apbct_page_hits%2522%255D%252C%2522check_value%2522%253A%25223441409b46a5320c22b843f9ed24b5b2%2522%257D; ct_timezone=3; ct_fkp_timestamp=1566227255; ct_pointer_data=%5B%5B209%2C1507%2C3243%5D%2C%5B204%2C1506%2C3324%5D%2C%5B204%2C1505%2C3340%5D%2C%5B198%2C1505%2C3586%5D%2C%5B198%2C1506%2C3606%5D%2C%5B198%2C1506%2C6402%5D%2C%5B245%2C1451%2C6454%5D%2C%5B424%2C673%2C103463%5D%2C%5B389%2C666%2C103518%5D%2C%5B389%2C665%2C103792%5D%2C%5B387%2C660%2C103806%5D%2C%5B169%2C489%2C103956%5D%2C%5B143%2C489%2C104191%5D%2C%5B125%2C507%2C104256%5D%2C%5B28%2C553%2C104408%5D%2C%5B15%2C566%2C104556%5D%2C%5B0%2C657%2C260912%5D%2C%5B56%2C657%2C261006%5D%2C%5B419%2C732%2C261404%5D%2C%5B231%2C1018%2C261460%5D%5D
    Host: mysite.com
    Origin: https://mysite.com
    Referer: https://mysite.com/excursions/%d0%b2%d0%b5%d1%87%d...
    Sec-Fetch-Mode: cors
    Sec-Fetch-Site: same-origin
    User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.100 Safari/537.36
    X-Requested-With: XMLHttpRequest
    value: 4
    post_id: 7776
  • Как динамически отправлять ajax-запрос?

    @Ofelion Автор вопроса
    ThunderCat, выдаётся ошибка 500, сервер ничего не возвращает, хотя данные отправляются на него.
  • Как динамически отправлять ajax-запрос?

    @Ofelion Автор вопроса
    ThunderCat, ладно, этот вопрос решился, но почему сервер падает при попытке передать полученный аргумент в функцию wordpress:
    $value = $_POST['value'];
    $post_id = $_POST['post_id'];
    print_r(get_post_meta($post_id));
  • Как динамически отправлять ajax-запрос?

    @Ofelion Автор вопроса
    Решил проблему довольно банально - вместо GET написал POST - всё заработало, как надо. Отсюда вопрос - почему?
  • Как динамически отправлять ajax-запрос?

    @Ofelion Автор вопроса
    Михаил Братеньков, ThunderCat, вот так:

    $value = $_GET['value'];
    echo "Значение = $value";


    Выводится только значение, без текста
  • Как динамически отправлять ajax-запрос?

    @Ofelion Автор вопроса
    ThunderCat, а в какую сторону копать тогда? Почему value выводится, а простая запись текстовая в том же обработчике - нет?
  • Как динамически отправлять ajax-запрос?

    @Ofelion Автор вопроса
    ThunderCat, там тоже 5. Я имею ввиду, что в обработчике я ещё написал echo 'test', но на страницу выводится только 5, а test не выводится