html5 — Как я могу сделать PHP-код всплывающим в новом окне?

У меня есть плагин WordPress, который позволяет мне отправлять людей на новый URL. вместо того, чтобы перейти по этому URL на той же странице и заставить пользователей покинуть мой сайт. Я хочу, чтобы новое окно открывалось, когда они переходят на URL

Как я могу отредактировать этот код, чтобы открылось новое окно?

  <?php
/**
Plugin Name: [WPJB] Application URL
Version: 1.1
Author: Greg Winiarski
Description: Allows to set application URL on per job basis.
*/

// Plugin activation
register_activation_hook( __FILE__, 'wpjb_aurl_register');

function wpjb_aurl_register() {
// registers new custom field in wp_wpjb_meta table
wpjb_meta_register("job", "application_url");
}

// Plugin deactivation
register_deactivation_hook( __FILE__, 'wpjb_aurl_unregister');

function wpjb_aurl_unregister() {
// do nothing ...
}

// Adding custom fields to the form
add_filter("wpjb_form_init_job", "wpjb_aurl_init_job");
add_filter("wpja_form_init_job", "wpjb_aurl_init_job");

function wpjb_aurl_init_job($form) {

// adding new fields to the form
$e = $form->create("application_url", "text");
$e->setBuiltin(false);
$e->setLabel("Application URL");
$e->addFilter(new Daq_Filter_WP_Url);
$e->addValidator(new Daq_Validate_Url);
$e->setValue($form->getObject()->meta->application_url->value());
$form->addElement($e, "company");

return $form;
}


add_action("wpjb_front_pre_render", "wpjb_aurl_pre_render", 10, 2);

function wpjb_aurl_pre_render($app, $file) {
global $post_type;

try {
$c1 = is_wpjb() && wpjb_is_routed_to("index.single");
} catch(Exception $e) {
$c1 = false;
}
$c2 = $post_type == "job";

if(!$c1 && !$c2) {
return;
}

$job = $app->controller->view->job;

if(!$job->meta->application_url->value()) {
return;
}

$app->controller->view->application_url = $job->meta->application_url-    >value();

}

?>

0

Решение

Вы не можете сделать это чисто с PHP, но вы можете вместо перенаправления на новый url echo javascript, который будет запущен при загрузке страницы, которая откроет URL в новом окне или вкладке.

Используя что-то вроде

Echo "<script> var win = window.open(".$job->meta->application_url->value().", '_blank'); win.focus();</script>";

В вашем PHP-скрипте, вероятно, на той позиции, которая у вас сейчас есть

$app->controller->view->application_url = $job->meta->application_url->value();
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]