[Mautic 2.16.2] 日本語化しても日本向けにならない部分を直そう

オープンソースのMAツール、Mauticを使い始めたところ、一応日本語対応しているのですが細かい部分でちらほら日本の環境に最適化されていないなと思った部分がいくつかあったので、直しました。

姓名が逆順で表示される

デフォルトだと「名, 姓」の順で表示されてしまうので、これを「姓 名」の表示に変えたい。
こういうのは管理画面で設定できると本当に便利なのになぁと思ったり。
主に姓名逆順で困るのが、以下。

  • コンタクト(リード)のリスト
  • 送信メールの名前

コンタクト(リード)のリスト

ファイルの場所 /app/bundles/LeadBundle/Controller/LeadController.php

// 1308行目
$leadName         = $leadFields['firstname'].' '.$leadFields['lastname'];
↓
$leadName         = $leadFields['lastname'].' '.$leadFields['firstname'];

ファイルの場所 /app/bundles/LeadBundle/Controller/LeadController.php

// 1308行目
$leadName         = $leadFields['firstname'].' '.$leadFields['lastname'];
↓
$leadName         = $leadFields['lastname'].' '.$leadFields['firstname'];

// 1835行目
$items[$user['id']] = $user['firstName'].' '.$user['lastName'];
↓
$items[$user['id']] = $user['lastName'].' '.$user['firstName'];

ファイルの場所 /app/bundles/LeadBundle/Entity/Lead.php

// 710行目
public function getName($lastFirst = false) //この$lastFirstのtrue/falseで判定している
↓
public function getName($lastFirst = true)

// 717行目
$fullName = $lastName.', '.$firstName;
↓
$fullName = $lastName.' '.$firstName; // カンマが不要なので削除

// 754行目
public function getPrimaryIdentifier($lastFirst = false)
↓
public function getPrimaryIdentifier($lastFirst = true)

送信メールの名前

//*ファイルの場所 /app/bundles/EmailBundle/Model/EmailModel.php
// 1622行目
if (!$mailer->setTo($user['email'], $user['firstname'].' '.$user['lastname'])) {
↓
if (!$mailer->setTo($user['email'], $user['lastname'].' '.$user['firstname'])) {

// 2404行目
if (!$mailer->setTo($user['email'], $user['firstname'].' '.$user['lastname'])) {
↓
if (!$mailer->setTo($user['email'], $user['lastname'].' '.$user['firstname'])) {

コンタクトの詳細で住所の順番が海外式

住所の表記も逆に表示されてしまうので、これを解消したい。

//*ファイルの場所 /app/bundles/LeadBundle/Views/Lead/lead.html.php
// 511行目から
<address class="text-muted">
  <?php if (isset($fields['core']['address1'])): ?>
    <?php echo $view->escape($fields['core']['address1']['value']); ?><br>
  <?php endif; ?>
  <?php echo (!empty($fields['core']['address2']['value'])) ? $view->escape($fields['core']['address2']['value']).'<br>' : ''; ?>
  <?php echo $view->escape($lead->getLocation()); ?>
  <?php echo isset($fields['core']['zipcode']) ? $view->escape($fields['core']['zipcode']['value']) : '' ?>
<br>
</address>
↓
<address class="text-muted">
  〒 <?php echo isset($fields['core']['zipcode']) ? $view->escape($fields['core']['zipcode']['value']) : '' ?>
<br>
  <?php echo $view->escape($lead->getLocation()); ?>
  <?php if (isset($fields['core']['address1'])): ?>
    <?php echo $view->escape($fields['core']['address1']['value']); ?>
  <?php endif; ?>
  <?php echo (!empty($fields['core']['address2']['value'])) ? $view->escape($fields['core']['address2']['value']) : ''; ?>
</address>

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です