$pr = commerce_product_load($pr3[$v1[3]]);
//$cena = commerce_product_calculate_sell_price($pr);
//print_r($cena);
isset($pr->commerce_price['und'][0]['amount'])? $price = $pr->commerce_price['und'][0]['amount'] : $price = 0;
print " --- $price";
isset($pr->field_price_krasnodar['und'][0]['amount'])? $price2 = $pr->field_price_krasnodar['und'][0]['amount']: $price2 = 0;
print " --- $price2";
isset($pr->field_price_chelabinsk['und'][0]['amount'])? $price3 = $pr->field_price_chelabinsk['und'][0]['amount']: $price3 = 0;
print " --- $price3";
print '<br>';
$pr->commerce_price['und'][0]['amount'] = $v1[5]*100;
$pr->field_price_krasnodar = ['und' => [0 => [
'amount' => $v1[6]*100,
'currency_code' => 'RUB',
'data' => ['components' => []]]]];
$pr->field_price_chelabinsk = ['und' => [0 => [
'amount' => $v1[7]*100,
'currency_code' => 'RUB',
'data' => ['components' => []]]]];
//$pr->field_price_krasnodar['und'][0]['amount'] = $v1[6]*100;
//$pr->field_price_chelabinsk['und'][0]['amount'] = $v1[7]*100;
commerce_product_save($pr);
--------------------------
$pr = \Drupal\commerce_product\Entity\Product::load($v->entity_id);
$varID = $pr->getVariationIds()[0];
$var = \Drupal\commerce_product\Entity\ProductVariation::load($varID);
print round($var->price->number);
-----------
foreach($rez as $v){
//print $v->product_id;
$pr = \Drupal\commerce_product\Entity\Product::load($v->product_id);
//print $pr->field_foto[0]->target_id;
//print_r ($pr->field_foto[0]);
$fid = $pr->field_foto[0]->target_id;
$file_storage = \Drupal::entityTypeManager()->getStorage('file');
$file = $file_storage->load($fid);
//print $file->createFileUrl(false); // Полный путь
$src = $file->createFileUrl();
//print $file->filename->value;
?>
--------
-------------------
use \Drupal\taxonomy\Entity\Term;
$term = Term::create([
'name' => $_GET['gorod'],
'vid' => 'gorod',
]);
$term->save();
--------------------
$terms = \Drupal::entityTypeManager()->getStorage('taxonomy_term')->loadTree('gorod');
------------
$pr = \Drupal\commerce_product\Entity\Product::load($s[2]);
-----------
\Drupal\taxonomy\Entity\Term::load($nik2)->name->value
------------
use Symfony\Component\HttpFoundation\RedirectResponse;
return new RedirectResponse('/uu.php');
-----------
if($soob) {
$verh = '<a href="#" onclick="';
$verh .= "window.document.querySelector('.system-messages.clearfix').innerHTML = ''";
$verh .= '">Закрыть</a><p>';
\Drupal::messenger()->addWarning(['#markup' => \Drupal\Core\Render\Markup::create($verh.$soob)]);
}
----------
//$term = Drupal\taxonomy\Entity\Term::load(1);
//print $term->name; // Название термина
//print $term->vid; // Идентификатор словаря таксономии, к которому принадлежит данный термин
-------
function _form_validation_number_title_validate(&$form, \Drupal\Core\Form\FormStateInterface $form_state) {
$vadr = $form_state->getValue('field_vvedite_adr')[0]['value'];
if($vadr){
$zapr = "SELECT entity_id FROM node__field_vvedite_adr WHERE field_vvedite_adr_value = '$vadr'";
$rr = \Drupal::database()->query($zapr)->fetchField();
//$rr = db_query($zapr)->fetchField();
if($rr) {
$sozzak = '<div id="sozzak" >
По данному адресу уже были работы, создать заказчика?
<button type="button" id="da">Да</button>
<button type="button" id="net">Нет</button>
</div>';
$rendered_message = \Drupal\Core\Render\Markup::create($sozzak);
$form_state->setErrorByName('field_vvedite_adr', $rendered_message);
return;
}}
========
return ['#markup' => \Drupal\Core\Render\Markup::create($mytab), '#theme' => 'sablontemy',]; // В контроллере
<?php
// В Модулес
function sablontemy_theme($existing, $type, $theme, $path) {
return [
'sablontemy' => [
'variables' => ['u2' => NULL, 'u3' => NULL, 'rez' => NULL, 'osh' => NULL],
],
];
}
------------
class VseController extends ControllerBase {
public function build() {
ob_start();
?>
Что угодно. Хоть Принт. Любой смешанный PHP-HTML код
<?php
$mytab = ob_get_contents();
ob_end_clean();
return ['#markup' => \Drupal\Core\Render\Markup::create($mytab)];
}
---
$build['content'] = [
'#type' => 'item',
'#markup' => $rez,
];
---
//$u['verx']=['#markup' => \Drupal\Core\Render\Markup::create($mytab)];
//$u['niz'] = ['#markup' => 'rrrrrrrrrr'];
return [['#markup' => \Drupal\Core\Render\Markup::create($mytab)],['#markup' => 'rrrrr555']];
---------------------------------
ob_start();
$mytab = ob_get_contents();
ob_end_clean();
$element = array(
'#markup' => $mytab,
);
return $element;
--------------
$rez = \Drupal\Core\Render\Markup::create('tttвввддд <input name="dd">');
$build['content'] = [
'#type' => 'item',
'#markup' => $rez,
];
--------------------
\Drupal::messenger()->addStatus(t('This is a successful message.'));
\Drupal::messenger()->addWarning(t('This is a warning message.'));
\Drupal::messenger()->addError(t('This is an error message.'));
--------------------
\Drupal\user\Entity\User::load($u->_entity->uid->target_id)->name->value
zapis.first_page:
path: '/zapis'
defaults:
_controller: '\Drupal\zapis\Controller\FirstPageController::content'
_title: 'Календарь записи на приём'
requirements:
_permission: 'access content'
options:
no_cache: 'TRUE'
print \Drupal::currentUser()->id();
$current_user = \Drupal::currentUser();
$roles = $current_user->getRoles();
print_r($roles);
$form['nikgg'] = [
'#type' => 'html_tag',
'#tag' => 'a',
'#attributes' => [
'href' => '/uuu'],
'#value' => $this
->t('Hello Worlddd'),
];
$form['stoim'] = array(
'#type' => 'item',
'#title' => '',
'#markup' => '<a href="/">hhhh</a>',
);
$form['from'] = array(
'#type' => 'item',
'#title' => t('Заголовок как над полем'),
'#markup' => '<a href="">jjjjjjjj</a>',
);
use Drupal\Core\Url;
$url = Url::fromUserInput("/node/$node->nid");
$nidA = \Drupal::l($node->nid, $url);
$url = Url::fromUri('http://www.example.com/');
$external_link = \Drupal::l(t('External link'), $url);
$url = Url::fromRoute('collect_phone2.form');
$internal_link = \Drupal::l(t('Book admin'), $url);
$form['nikgg'] = [
'#type' => 'html_tag',
'#tag' => 'a',
'#attributes' => [
'href' => '/uuu'],
'#value' => $this
->t('Hello Worlddd'),
];
$form['stoim'] = array(
'#type' => 'item',
'#title' => '',
'#markup' => 'Стоимость печати = ',
);
$form['entity_id'] = array(
'#type' => 'hidden',
'#value' => 'hhhh',
);
Форма с галочками:
$h = [5,6];
$o= [];
$o[0] = [1,2,3];
$o[1] = [1,2,3];
$o[2] = [1,2,3];
$form['izmenenie_oplaty'] = [
'#type' => 'tableselect',
'#header' => $h,
'#options' => $o,
'#empty' => t('No users found'),
];
-----------------------
$form['contacts'] = array(
'#type' => 'table',
'#caption' => $this
->t('Sample Table'),
'#header' => array(
$this
->t('Name'),
$this
->t('Phone'),
),
);
for ($i = 1; $i <= 4; $i++) {
$form['contacts'][$i]['#attributes'] = array(
'class' => array(
'foo',
'baz',
),
);
$form['contacts'][$i]['name'] = array(
'#type' => 'textfield',
'#title' => $this
->t('Name'),
'#title_display' => 'invisible',
);
$form['contacts'][$i]['phone'] = array(
'#type' => 'tel',
'#title' => $this
->t('Phone'),
'#title_display' => 'invisible',
);
}
$form['contacts'][]['colspan_example'] = array(
'#plain_text' => 'Colspan Example',
'#wrapper_attributes' => array(
'colspan' => 2,
'class' => array(
'foo',
'bar',
),
),
);
--------------------
$rr = views_get_view_result('miltorgkranovschik', 'page_1');
foreach($rr as $u){
$kr = $u->_entity->field_kranovschik->target_id;
}
Получение Ноды:
$node = node_load(3043);
//print_r($node);
print $node->id(); - именно со скобками только и работает
https://drupal.ru/docs/videouroki/drupalbookru/12111-obrashchenie-k-poly...
Загрузка ноды по ID:
<?php
$nid = 234;
$node_storage = \Drupal::entityTypeManager()->getStorage('node');
$node = $node_storage->load($nid);?>
Получение ID ноды:
<?php $node->id();?>
Получение бандла (типа материала) ноды:
<?php$node->bundle(); // Работает для нод и многих типов сущностей, но не для всех
$entity->getType(); // Работает для всех типов сущностей?>
Получение значений полей:
<?php$node->get('title')->value; // Заголовок ноды
$node->get('created')->value; // Timestamp создания ноды
$node->get('body')->value; // Поле Содержимое
$node->get('body')->summary; // Тизер поля Содержимое
$node->get('field_foo')->value; // Обычные текстовые или числовые поля
$node->get('field_image')->target_id; // Reference поля на другие сущности, например файл, изображения, термины таксономии, поля entity reference.
?>
Также можно использовать короткую запись для получения значений:
<?php$node->title->value;
$node->created->value;
$node->body->value;
$node->body->summary;
$node->field_foo->value;
$node->field_image->target_id;
?>
Layout Builder позволяет настраивать отображение любых сущностей с использованием Layout API.
зачем это всё, если есть Page Manager, Panels, Display suite и Panelizer?
gavias-content-builder Gavias Vitaco 8.x ???