рдПрдХрд▓ YII рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рдХрдИ рд╕рдВрд╕реНрдХрд░рдг рдХреИрд╕реЗ рдкрд░рд┐рдирд┐рдпреЛрдЬрд┐рдд рдХрд░реЗрдВ

рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рд╣рдо рдпрд╣ рд╡рд░реНрдгрди рдХрд░реЗрдВрдЧреЗ рдХрд┐ рд╣рдордиреЗ yii рдлреНрд░реЗрдорд╡рд░реНрдХ рдкрд░ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЕрдкрдиреА рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рдХрд╛рдо рдХреЛ рдХреИрд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд┐рдпрд╛ред рдкрд╣рд▓реЗ рднрд╛рдЧ рдореЗрдВ, рд╣рдо рдереЛрдбрд╝рд╛ рд╕рд┐рджреНрдзрд╛рдВрдд рджреЗрддреЗ рд╣реИрдВ рдХрд┐ рдХрд┐рди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдФрд░ рджреВрд╕рд░реЗ рднрд╛рдЧ рдореЗрдВ рд╣рдо рддрдХрдиреАрдХреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВред

рднрд╛рдЧ 1


рдкрд░рд┐рдЪрдп

рдХрдИ рдХрдВрдкрдирд┐рдпрд╛рдВ рд╡рд┐рднрд┐рдиреНрди рдмрд╛рдЬрд╛рд░реЛрдВ рдореЗрдВ рдЕрдкрдиреЗ рдЙрддреНрдкрд╛рджреЛрдВ рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреА рд╣реИрдВред рддреЛ рд╣рдо рдХрд░рддреЗ рд╣реИрдВред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд░реВрд╕реА, рдЕрдореЗрд░рд┐рдХреА, рдпреВрд░реЛрдкреАрдп рдФрд░ рдЕрдиреНрдп рдмрд╛рдЬрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд╛рдЗрдЯреЗрдВ рд╣реИрдВ, рдореЛрдмрд╛рдЗрд▓ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рд╛рдЗрдЯреЗрдВ рд╣реИрдВ, рд╕рд╣рдмрджреНрдз рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреА рд╕рд╛рдЗрдЯреЗрдВ рд╣реИрдВ, рдЬреЛ рд╡рд┐рднрд┐рдиреНрди рджреЗрд╢реЛрдВ рдХреЗ рд▓рд┐рдП рднреА рдЕрд▓рдЧ рд╣реИрдВред рд╡рд┐рдХрд╛рд╕ рдореЗрдВ, рд╣рдо yii рдлреНрд░реЗрдорд╡рд░реНрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рд╣рдордиреЗ рдкрд┐рдЫрд▓реЗ рд╕рд╛рд▓ рдЕрдкрдиреА рдореБрдЦреНрдп рд╕рд╛рдЗрдЯ Alawar.ru рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХреА, рдФрд░ рдЗрд╕ рд╕рд╛рд▓ рднреА Alawar.com, Alawar.pl рдФрд░ iOS рдбрд┐рд╡рд╛рдЗрд╕ рд╕рд╛рдЗрдЯреЗрдВред Yii рдкрд░ рд╣рдорд╛рд░реА рд╕рд╛рдЗрдЯреЛрдВ рдХреА рддреИрдирд╛рддреА рдХреА рдПрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╡реЗ рд╕рднреА рдЗрд╕ рдЕрджреНрднреБрдд рд░реВрдкрд░реЗрдЦрд╛ рдХреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдкрд░ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред

рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рд╣рдо рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗред

рд╕рд╛рдЗрдЯ рдЕрдВрддрд░

рдПрдХ рд╣реА рдордВрдЪ рдкрд░ рдХрдИ рд╕рд╛рдЗрдЯреЛрдВ рдХреА рд╡реНрдпрд╡рд╕реНрдерд╛ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЛ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдЙрдирдХреЗ рдкрд╛рд╕ рдХреНрдпрд╛ рд╣реИ рдФрд░ рд╡реЗ рдХреИрд╕реЗ рднрд┐рдиреНрди рд╣реИрдВред рдмрд╕ рдпрд╣ рдиреЛрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рд╡рд┐рднрд┐рдиреНрди рд╕рд╛рдЗрдЯреЛрдВ рд╕реЗ рд╣рдорд╛рд░рд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рди рдХреЗрд╡рд▓ рд╕реНрдерд╛рдиреАрдпрдХрд░рдг рдореЗрдВ рдЕрдВрддрд░, рдЬреЛ рдХрд┐ рд╡рд┐рднрд┐рдиреНрди Yii::t('messageFile', 'messageCode') рд╡рд┐рдЪрд╛рд░реЛрдВ рдФрд░ рд╡рд┐рднрд┐рдиреНрди messageFile рдореЗрдВ рднрд┐рдиреНрди-рднрд┐рдиреНрди рд╕реНрдерд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП messageFile ред

рдФрд░ рд╕рд╛рдЗрдЯ рдореЗрдВ рдЕрд▓рдЧ рдЪреАрдЬреЗрдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ:

рд╣рдо рдкреНрд░рддреНрдпреЗрдХ рдЖрдЗрдЯрдо рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реЗрдВрдЧреЗред

рднрд░рдиреЗ

рднрд░рдиреЗ рд╕реЗ рд╣рдорд╛рд░рд╛ рдорддрд▓рдм рд╡рд┐рднрд┐рдиреНрди рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рд╛рдордЧреНрд░реА рд╕реЗ рд╣реИред рдЪреВрдВрдХрд┐ рд╕рд╛рдЗрдЯреЗрдВ рд╡рд┐рднрд┐рдиреНрди рджреЗрд╢реЛрдВ рдХреЗ рд▓рд┐рдП рднрд┐рдиреНрди рд╣реЛрддреА рд╣реИрдВ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рд╡реЗ рд╡рд┐рднрд┐рдиреНрди рдмрд╛рдЬрд╛рд░реЛрдВ рдореЗрдВ рдЙрддреНрдкрд╛рдж рдмреЗрдЪрддреЗ рд╣реИрдВ, рддреЛ рдПрдХ рдмрд╛рдЬрд╛рд░ рдореЗрдВ рдмрд┐рдХреНрд░реА рдХреЗ рд▓рд┐рдП рдкреЗрд╢ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЙрддреНрдкрд╛рджреЛрдВ рдХреЛ рдХрднреА-рдХрднреА рджреВрд╕рд░реЗ рдореЗрдВ рдмрд┐рдХреНрд░реА рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╡рд┐рднрд┐рдиреНрди рд╕рд╛рдЗрдЯреЛрдВ рдореЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд┐рд╢реЗрд╖ рдСрдлрд╝рд░ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрдирдХреЗ рдЖрдЧрдВрддреБрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЫреВрдЯ рд╣реЛ рд╕рдХрддреА рд╣реИред

рдЕрдВрдд рдореЗрдВ, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕реНрдерд┐рд░ рд╕реВрдЪрдирд╛ рдкреГрд╖реНрда рднреА рднрд┐рдиреНрди рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рдореЗрдВ рдврд╛рдВрдЪреЗ рдХреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рд╛рде рдбреЗрдЯрд╛ рд╡рд┐рд╕рдВрдЧрддрд┐рдпреЛрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╡реНрдпрдХреНрддрд┐рдЧрдд рдмреНрд▓реЙрдХ / рдлреНрд░рдВрдЯреЗрдВрдб рдореЙрдбреНрдпреВрд▓ рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, Alawar.com рдХреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдЕрд╕реАрдорд┐рдд рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╣реИ - рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рд╕рднреА рдЦреЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЗрд╕реА рд▓рд╛рдЧрдд рдХреЗ рд▓рд┐рдП рд╕рджрд╕реНрдпрддрд╛ред Alawar.pl рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдВрдЧреНрд░реЗрдЬреА рд╕рд╛рдЗрдЯ рд╕реЗ рдЕрд▓рдЧ рд╕рджрд╕реНрдпрддрд╛ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рд░реВрд╕реА рд╕рд╛рдЗрдЯ рдкрд░, рдЕрд╕реАрдорд┐рдд рдХрд╛ рдХрд╛рдо рдмрд┐рд▓реНрдХреБрд▓ рднреА рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдереАрдореНрд╕ / рдЦрд╛рд▓

рдЗрд╕ рдЕрдиреБрдЪреНрдЫреЗрдж рдореЗрдВ, рд╡рд┐рднрд┐рдиреНрди рд╡рд┐рдХрд▓реНрдк рд╕рдВрднрд╡ рд╣реИрдВ:
  1. рд╡рд┐рднрд┐рдиреНрди рд╕рд╛рдЗрдЯ рд╡рд┐рд╖рдп (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдореЛрдмрд╛рдЗрд▓ рд╕рд╛рдЗрдЯ рдореЗрдВ рдореБрдЦреНрдп рдПрдХ рд╕реЗ рдЕрд▓рдЧ рд╡рд┐рд╖рдп рд╣реИ)ред
  2. рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд╕рдорд╛рди рдереАрдо, рд▓реЗрдХрд┐рди рд╡рд┐рднрд┐рдиреНрди рдбрд┐рдЬрд╝рд╛рдЗрди рд╡рд┐рдХрд▓реНрдк (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 9 рдордИ рдХреЛ Alawar.ru рдкрд░ рдПрдХ рдЙрддреНрд╕рд╡ рдХреА рддреНрд╡рдЪрд╛ рдпрд╛ 4 рдЬреБрд▓рд╛рдИ рдХреЛ Alawar.com рдкрд░ рдПрдХ рддреНрд╡рдЪрд╛)ред

Yii рдЗрдВрдЬрди рдХреЗ рд▓рд┐рдП рдереАрдо рдмрдирд╛рдирд╛ рд╕реАрдЦрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИред рд░реВрдкрд░реЗрдЦрд╛ рдореЗрдВ рд╕рдВрд░рдЪрдирд╛рддреНрдордХ рд░реВрдк рд╕реЗ рд╡рд┐рд╖рдпреЛрдВ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдХреЗ, рд╕рд╛рдЗрдЯреЛрдВ рдкрд░ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдореБрджреНрджрд╛ рд╣рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рднрд╛рд╖рд╛ / рд╕реНрдерд╛рдиреАрдпрдХрд░рдг

рдФрд░ рдХреЗрд╡рд▓ рдЕрдВрддрд┐рдо рд╕реНрдерд╛рди рдореЗрдВ рд╕реНрдерд╛рдиреАрдпрдХрд░рдг рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдКрдкрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рд╕рд╛рдЗрдЯ рд╕рдорд╛рдирддрд╛рдПрдБ

рдЕрдм рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рд╕рднреА рд╕рд╛рдЗрдЯреЛрдВ рдореЗрдВ рдХреНрдпрд╛ рдЖрдо рд╣реИред

рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рдорд╛рдирддрд╛ рдФрд░ рдПрдХрдорд╛рддреНрд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдФрд░ рдкрд░реНрдпрд╛рдкреНрдд рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдПрдХ рд╣реА рдордВрдЪ рдкрд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рд╛рдЗрдЯреЗрдВ рдХреНрдпреЛрдВ рдмрдирд╛рдиреА рдЪрд╛рд╣рд┐рдП, рдПрдХ рд╣реА рдмреИрдХрдПрдВрдб рд╣реИред рдпрджрд┐ рдЖрдкрдХреА рд╕рд╛рдЗрдЯреЛрдВ рдкрд░ рдмреИрдХрдПрдВрдб рдЕрд▓рдЧ рд╣реИ, рддреЛ рд╢рд╛рдпрдж рдЖрдкрдХреЛ рдЙрдиреНрд╣реЗрдВ рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдирд╣реАрдВ рдорд┐рд▓рд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╣рд╛рдВ, рд╣рдо рд╡рд┐рднрд┐рдиреНрди рд╕рд╛рдЗрдЯреЛрдВ рдкрд░ рдмрд┐рдХреНрд░реА рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рдЙрддреНрдкрд╛рджреЛрдВ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рд╕рднреА рдЙрддреНрдкрд╛рдж рдПрдХ рд╣реА рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╣реИрдВ рдФрд░ рдПрдХ рд╣реА рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВред рд╣рдо рд╡рд┐рднрд┐рдиреНрди рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЦрд╛рд▓ рдЦреАрдВрдЪрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡реЗ рд╕рднреА рдПрдХ рд╡рд┐рд╖рдп рдкрд░ рдЦрд░рд╛рдм рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдЦрд╛рд╕рдХрд░ рдЕрдЧрд░ рдмреИрдХрдПрдВрдб mysql рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдХреНрд╖реЗрддреНрд░ рддрдХ рд╕реАрдорд┐рдд рдирд╣реАрдВ рд╣реИред

рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдмреИрдХрдПрдВрдб рдХрд╛ рдорддрд▓рдм рд╣реИ:

рдХрд▓реНрдкрдирд╛ рдХреАрдЬрд┐рдП рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдирдИ рд╕рд╛рдЗрдЯ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдЗрди рд╕рднреА рддрдХрдиреАрдХреЛрдВ рдХреЛ рдЦрд░реЛрдВрдЪ рд╕реЗ рдЙрдард╛рдирд╛ рд╣реЛрдЧрд╛ред

рдХрд╛рд░реНрдп

рд╣рдорд╛рд░реА рд╕рд╛рдЗрдЯреЛрдВ рдХреА рд╕рдорд╛рдирддрд╛ рдФрд░ рдЕрдВрддрд░ рдХреА рддреБрд▓рдирд╛ рдХреЛ рд╕рд╛рд░рд╛рдВрд╢рд┐рдд рдХрд░рддреЗ рд╣реБрдП, рд╣рдо рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рдмреАрдЪ рдХреНрдпрд╛ рдХрд╛рд░реНрдп рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдП рдЬрд╛рдиреЗ рдЪрд╛рд╣рд┐рдП:
  1. рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдмреИрдХрдПрдВрдб рдХреЛ рдмрдирд╛рдП рд░рдЦрддреЗ рд╣реБрдП рд╡рд┐рднрд┐рдиреНрди рд╕рд╛рдЗрдЯреЛрдВ рдкрд░ рдЕрд▓рдЧ рдФрд░ / рдпрд╛ рдЕрджреНрд╡рд┐рддреАрдп рд╕рд╛рдордЧреНрд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВред
  2. рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рд╛рдЗрдЯ рдореЙрдбреНрдпреВрд▓ рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рдПрдХ-рджреВрд╕рд░реЗ рд╕реЗ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ред
  3. рд╡рд┐рднрд┐рдиреНрди рд╡рд┐рд╖рдпреЛрдВ рдпрд╛ рд╡рд┐рднрд┐рдиреНрди рддреНрд╡рдЪрд╛ рд╡рд┐рд╖рдпреЛрдВ, рд╡рд┐рднрд┐рдиреНрди рдкрд╛рда рд╕реНрдерд╛рдиреАрдпрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдердиред

рднрд╛рдЧ реи


рд╕рд╛рдЗрдЯ рдкрд░рд┐рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ

рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рд╣рдо рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рджреЛ рд╕рд╛рдЗрдЯреЛрдВ: рд░реВрд╕реА рдФрд░ рдЕрдВрдЧреНрд░реЗрдЬреА: рдореЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рджрд┐рдЦрд╛рдПрдВрдЧреЗред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЖрдк рдЕрдкрдиреА рдЬрд╝рд░реВрд░рдд рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХрдИ рд╕рд╛рдЗрдЯреЛрдВ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╣рдо рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд╛рдкрджрдВрдбреЛрдВ рджреНрд╡рд╛рд░рд╛ рдХрд┐рд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдХреМрди рд╕реА рд╕рд╛рдЗрдЯ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХреА рдЬрд╛рдП:

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдПрдХ protected/config/sites.php рдмрдирд╛рдПрдБ:
 <?php return array( 'mywebsite.ru' => array( 'host' => array( 'mywebsite.ru', 'www.mywebsite.ru', ), 'userAgent' => false, ), 'mywebsite.com' => array( 'host' => array( 'mywebsite.com', 'www.mywebsite.com', ), 'userAgent' => false, ), ); 


рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рд╣рдо рдХреЗрд╡рд▓ рдбреЛрдореЗрди рджреНрд╡рд╛рд░рд╛ рд╕рд╛рдЗрдЯ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реЗрдВрдЧреЗред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдЬреЗрдВрдЯ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП, 'userAgent' => false рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВред рдпрд╣ рдХреБрдВрдЬреА рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рдХреА рдЬрд╛рддреА рд╣реИ рдЬрдм рдПрдХ рдбреЛрдореЗрди рдХреЛ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рдЗрдЯреНрд╕ рджрд┐рдЦрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди

рд╣рдо рдкреНрд░рддреНрдпреЗрдХ рд╕рд╛рдЗрдЯ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рдЕрдиреВрдареА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рдЕрд▓рдЧ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдВрдЧреЗред рдФрд░ рдЗрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЙрдкрд░реЛрдХреНрдд рд╕рд░рдгреА рдореЗрдВ рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЗ рдирд╛рдо рджреЗрдВред рдЕрд░реНрдерд╛рддреН, рдлрд╝рд╛рдЗрд▓реЗрдВ рдмрдирд╛рдПрдБ:
protected/config/mywebsite.ru.php
protected/config/mywebsite.com.php

рдиреАрдЪреЗ рдлрд╝рд╛рдЗрд▓ рдХреА рд╕рд╛рдордЧреНрд░реА protected/config/mywebsite.ru.php :
 <?php return CMap::mergeArray( array( 'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..', 'name'=>'Application name', 'theme' => 'mywebsite', 'language' => 'ru', 'modules'=>array( ), 'controllerMap'=>array( 'site'=>'application.sites.common.controllers.SiteController', 'promo'=>array( 'class' => 'application.sites.mywebsite-ru.controllers.PromoController', 'viewPrefix' => '/mywebsite-ru/promo/', ), 'support'=>array( 'class' => 'application.sites.common.controllers.SupportController', 'viewPrefix' => '/mywebsite-ru/support/', ), ), 'components'=>array( 'urlManager'=>array( 'urlFormat'=>'path', 'showScriptName' => false, 'urlSuffix' => '/', 'rules' => array( '' => 'site/index', 'promo/' => 'promo/index', 'support/' => 'support/index', ), ), 'errorHandler'=>array( 'errorAction'=>'site/error', ), ), 'params'=>array( 'adminEmail'=>'admin@mywebsite.ru', 'arCustomParams' => array( 'customBannerPath' => '/promo/mywebsite.ru/promo-banner.png' ), ), ), require_once(dirname(__FILE__).'/main.php') ); 


рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╣рдордиреЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рднреА рд╕рд╛рдЗрдЯ-рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛, рдЬреЛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╣реИрдВред рдЗрд╕ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рд╕рд╛рдЗрдЯ рдХрд╛ рдирд╛рдо, рд╡рд┐рд╖рдп, рд╕реНрдерд╛рди рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИрдВред

рд╡рд┐рд╢реЗрд╖ рд╕рд╛рдЗрдЯ рд╕рд╛рдордЧреНрд░реА рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдпрд╛ рд╡рд┐рд╢реЗрд╖ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдЕрд▓рдЧ-рдЕрд▓рдЧ рдирд┐рдпрдВрддреНрд░рдХреЛрдВ рдХреЛ рдХрд╕реНрдЯрдо рддрд░реНрдХ рдпреБрдХреНрдд рдЬрд╛рд░реА рдХрд░реЗрдВрдЧреЗред рд╣рдо рдЙрди рддрд░реАрдХреЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рд╕рднреА рд╕рд╛рдЗрдЯреЛрдВ рдФрд░ рд╕рд╛рдЗрдЯ-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдирд┐рдпрдВрддреНрд░рдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрдо рдЙрдкрд▓рдмреНрдз рд╣реЛрдЧрд╛ред controllerMap рдкреИрд░рд╛рдореАрдЯрд░ рдореЗрдВ рдЗрд╕ рд╕рд╛рдЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ controllerMap рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИрдВ:
  'controllerMap'=>array( 'site'=>'application.sites.common.controllers.SiteController', 'promo'=>array( 'class' => 'application.sites.mywebsite-ru.controllers.PromoController', 'viewPrefix' => '/mywebsite-ru/promo/', ), 'support'=>array( 'class' => 'application.sites.common.controllers.SupportController', 'viewPrefix' => '/mywebsite-ru/support/', ), ), 

рдпрд╣рд╛рдБ рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ mywebsite.ru рджреЛрдиреЛрдВ рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ SiteController рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рдирд┐рдпрдВрддреНрд░рдХ рдХреЗ рд▓рд┐рдП рдкреНрд░рджрд░реНрд╢рди рдкрде рдорд╛рдирдХ рд╣реЛрдЧрд╛, рдХреЛрдИ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдВрдХреЗрдд рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
PromoController , рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рдХреЗрд╡рд▓ рдЗрд╕ рд╕рд╛рдЗрдЯ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдХреЗрд╡рд▓ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рд╕рд╛рдЗрдЯ рдкрд░ рд▓рд╛рдЧреВ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдЪрд╛рд░ рдкрд░ рдбреЗрдЯрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред SupportController рджреЛрдиреЛрдВ рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рдмреАрдЪ рд╕рд╛рдЭрд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рдирд┐рдпрдВрддреНрд░рдХ рдХреЗ рд▓рд┐рдП рдХрд╕реНрдЯрдо рдореИрдкрд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдкреНрд░рддреНрдпреЗрдХ рд╕рд╛рдордиреЗ render рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдкреБрдирд░реНрдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЗ рд╕рд╛рде рдЗрд╕ рд╕рдВрдкрддреНрддрд┐ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рд╕рднреА рдлреНрд░рдВрдЯ-рдПрдВрдб рдирд┐рдпрдВрддреНрд░рдХреЛрдВ рдореЗрдВ viewPrefix рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЗ рд╕рд╣реА рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо protected/components/AController.php рдХреНрд▓рд╛рд╕ рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдкреНрд░рд╛рдкреНрдд protected/components/AController.php рдХреНрд▓рд╛рд╕ рдмрдирд╛рдПрдВрдЧреЗ:
 <?php /** * Controller is the customized base controller class. * All controller classes for this application should extend from this base class. */ class AController extends CController { /** * @var string the default layout for the controller view. Defaults to '//layouts/column1', * meaning using a single column layout. See 'protected/views/layouts/column1.php'. */ public $layout='//layouts/main'; public $baseHref=false; public $viewPrefix=''; /** * @var array context menu items. This property will be assigned to {@link CMenu::items}. */ public $menu=array(); /** * @var array the breadcrumbs of the current page. The value of this property will * be assigned to {@link CBreadcrumbs::links}. Please refer to {@link CBreadcrumbs::links} * for more details on how to specify this property. */ public $breadcrumbs=array(); /** * @var string page description */ public $pageDescription = ''; public function render($view,$data=null,$return=false) { return parent::render($this->viewPrefix.$view,$data,$return); } } 

рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдореЗрдВ рд╕рднреА рдлреНрд░рдВрдЯрдПрдВрдб рдирд┐рдпрдВрддреНрд░рдХ рдЗрд╕ рд╡рд░реНрдЧ рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓реЗрдВрдЧреЗред рдЗрд╕рдореЗрдВ, рд╣рдордиреЗ viewPrefix рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдФрд░, рдЗрд╕реЗ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП, render($view,$data=null,$return=false) рд╡рд┐рдзрд┐ render($view,$data=null,$return=false) рдлрд┐рд░ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛, рдЬреЛ рд╣рдореЗрдВ рджрд┐рдП рдЧрдП рдЙрдкрд╕рд░реНрдЧ рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рдХреЛрдВ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рд╕рдВрд░рдЪрдирд╛рддреНрдордХ рд░реВрдк рд╕реЗ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рдпрд╣ рдПрдХ рд▓рдЪреАрд▓реА рдкреНрд░рдгрд╛рд▓реА рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдЙрди рдбрд┐рд╕реНрдкреНрд▓реЗ / рдХрдВрдЯреНрд░реЛрд▓рд░ рдХреЛ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ рдЬреЛ рдЗрддрдиреЗ рднрд┐рдиреНрди рд╣реЛрддреЗ рд╣реИрдВ рдХрд┐ рдЙрдирдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд╛рдпрдХ рд╣реИред рдЪреВрдВрдХрд┐ рд╣рдорд╛рд░реА рд╕рднреА рд╕рд╛рдЗрдЯреЗрдВ рдПрдХ рд╣реА рдмреИрдХрдПрдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИрдВ, рд╣рдореЗрдВ рдХреЗрд╡рд▓ рдлреНрд░рдВрдЯрдПрдВрдб рд▓реЙрдЬрд┐рдХ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрд░реНрдерд╛рддреНред рдирд┐рдпрдВрддреНрд░рдХреЛрдВ рдФрд░ рд╡рд┐рдЪрд╛рд░реЛрдВ, рдФрд░ рдореЙрдбрд▓, рд░реВрдк, рдШрдЯрдХ, рдПрдХреНрд╕рдЯреЗрдВрд╢рди, рдФрд░ рдмрд╛рдХреА рд╕рдм рдХреБрдЫ рд╣рдореЗрд╢рд╛ рд╕рднреА рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рд╣реИрдВред рд╕рд╛рде рд╣реА URL рдкреНрд░реЗрд╖рдг рд╡рд┐рднрд┐рдиреНрди рд╕рд╛рдЗрдЯреЛрдВ рдкрд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╣реЛрдЧрд╛ред рдЗрд╕рд▓рд┐рдП, рд╣рдо рдПрдХ рдЕрд▓рдЧ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ urlManager ред рд╡реИрд╕реЗ, рд╕рднреА рд╕рд╛рдЗрдЯ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рд╕рднреА рдЕрдиреНрдп рд╕реЗрдЯрд┐рдВрдЧреНрд╕, рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣, рдореБрдЦреНрдпред main.php рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХреА рдЬрд╛рддреА рд╣реИрдВ, рдЬреЛ CMap::mergeArray рдорд╛рдзреНрдпрдо рд╕реЗ рд╡рд░реНрддрдорд╛рди рдХреЗ рд╕рд╛рде рд╡рд┐рд▓реАрди рд╣реЛ рдЬрд╛рддреА рд╣реИ CMap::mergeArray

SiteDispatcher

рд╣рдо рд╕рднреА рдирд┐рдпрдВрддреНрд░рдХ рдФрд░ рдбрд┐рд╕реНрдкреНрд▓реЗ рдмрдирд╛рдПрдВрдЧреЗ рдЬреЛ рд╣рдорд╛рд░реА рд╕рд╛рдЗрдЯреЛрдВ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗред рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдлрд╛рдЗрд▓реЗрдВ рдФрд░ рдЙрдирдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдлрд╝реЛрд▓реНрдбрд░ рдмрдирд╛рддреЗ рд╣реИрдВ:
protected/sites/common/controllers/SiteController.php
protected/sites/common/controllers/SupportController.php
protected/sites/mywebsite-ru/controllers/PromoController.php
protected/sites/mywebsite-com/controllers/PromoController.php
public/themes/mywebsite/views/site/index.php
public/themes/mywebsite/views/mywebsite-ru/promo/index.php
public/themes/mywebsite/views/mywebsite-ru/support/index.php
public/themes/mywebsite/views/mywebsite-com/promo/index.php
public/themes/mywebsite/views/mywebsite-com/support/index.php

рдмрдирд╛рдП рдЧрдП рдкреНрд░рддреНрдпреЗрдХ рдирд┐рдпрдВрддреНрд░рдХ рдХреЛ AController рдХреНрд▓рд╛рд╕ рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рдо YII рдХреЗ рдорд╛рдирдХ рдврд╛рдВрдЪреЗ рдХрд╛ рдереЛрдбрд╝рд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд░реЗрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдЪрд┐рдВрддрд╛ рдХреА рдХреЛрдИ рдмрд╛рдд рдирд╣реАрдВ рд╣реИред рд╣рдордиреЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рддрд╛рд░реНрдХрд┐рдХ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдмрдирд╛рдП рд░рдЦрд╛ред

рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдП рдЧрдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрд╡рд╢реНрдпрдХ рдирд┐рдпрдВрддреНрд░рдХреЛрдВ рдХреЛ рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП yii рд╕рд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдПрдХ рдЕрд▓рдЧ рдШрдЯрдХ рд╡рд░реНрдЧ protected/omponents/SiteDispatcher , рдЬрд┐рдирдореЗрдВ рд╕реЗ рдХрд╛рд░реНрдп рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реНрдерд┐рддрд┐ рдХреЗ рд▓рд┐рдП рд╡рд╛рдВрдЫрд┐рдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рд╣реИ:
 <?php class SiteDispatcher { //      public static function setCurrentSiteConfig( $configName ) { @session_start(); $_SESSION['CURRENT_SITE_CONFIG'] = array( 'host' => $_SERVER['HTTP_HOST'], 'configName' => $configName ); @session_write_close(); @session_destroy(); } //       public static function getCurrentSiteConfig() { @session_start(); $res = isset( $_SESSION['CURRENT_SITE_CONFIG'] ) ? $_SESSION['CURRENT_SITE_CONFIG'] : false; @session_write_close(); @session_destroy(); return $res; } public static function getConfigPath() { $arSites = self::getAvailableConfigs(); /*      ,     ,   ,   -          */ if ( ($arCurrent = self::getCurrentSiteConfig()) && $arCurrent['host'] == $_SERVER['HTTP_HOST'] && isset($arSites[$arCurrent['configName']]) ) { return 'protected/config/' . $arCurrent['configName'] . '.php'; } foreach ( $arSites as $configName => $arSiteConfig ) { $res = true; $res &= in_array( $_SERVER['HTTP_HOST'], $arSiteConfig['host'] ); if ( $res && $arSiteConfig['userAgent'] && isset( $_SERVER['HTTP_USER_AGENT'] ) ) { $m = false; $res &= preg_match( $arSiteConfig['userAgent'], $_SERVER['HTTP_USER_AGENT'], $m); } if ( $res ) { return 'protected/config/' . $configName . '.php'; } } error_log('Can\'t determine config to site: ' . var_export( array( 'host' => $_SERVER['HTTP_HOST'], 'userAgent' => $_SERVER['HTTP_HOST'], ), 1)); throw new Exception('Can\'t determine config to site'); } /** * * @static * @return mixed */ protected static function getAvailableConfigs() { return require( dirname(dirname(__FILE__)) . '/config/sites.php' ); } } 

рдЕрдм рд╣рдо рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХрд┐рд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдХреМрди рд╕рд╛ рдХреЙрдиреНрдлрд┐рдЧрд░ рдЪрд▓рд╛рдирд╛ рд╣реИред getConfigPath() рд╡рд┐рдзрд┐ рдЪрдпрдирд┐рдд getConfigPath() рдХрд╛ рдкрде рд▓реМрдЯрд╛рддреА рд╣реИред рдЗрд╕реА рд╕рдордп, рдЖрдЧреЗ рдХреА рдкрд╣реБрдВрдЪ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП рд╕рддреНрд░ рдореЗрдВ рдЪрдпрдирд┐рдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рд╕рд╣реЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЗрд╕ рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, index.php рдлрд╝рд╛рдЗрд▓ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ, рд▓рд╛рдЗрди рдХреЛ рдмрджрд▓реЗрдВ

 $config=dirname(__FILE__).'/../protected/config/main.php'; 
рдкрд░
 require dirname(__FILE__).'/../protected/components/SiteDispatcher.php'; $config=dirname(__FILE__).'/../'.SiteDispatcher::getConfigPath(); 


рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди, рдХреБрдЫ рдирд┐рдпрдВрддреНрд░рдХ рдФрд░ рдореИрдкрд┐рдВрдЧ рдХреЛ рдЕрд▓рдЧ рдХрд░рдХреЗ, рд╣рдордиреЗ рдкрд╣рд▓реЗ рднрд╛рдЧ рдореЗрдВ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдкрд╣рд▓реЗ рджреЛ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛ред

рддреНрд╡рдЪрд╛ рдХрд╛ рдЕрд▓рдЧ рд╣реЛрдирд╛

рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рд╕реНрд╡рдпрдВ рдХреА рдЦрд╛рд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рд╛рдЗрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рд╕реНрдерд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдХреЗ рддрдп рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдПрдХ рддреНрд╡рдЪрд╛ рдПрдХ рдереАрдо рдФрд░ рдЫрд╡рд┐ рдХреА рдЕрд▓рдЧ рд╕реАрдПрд╕рдПрд╕ рдФрд░ рдЬреЗрдПрд╕ рдлрд╛рдЗрд▓реЗрдВ рд╣реИред рд╣рдорд╛рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ, рд╣рдо рдХреБрдЫ рд╡реИрд╢реНрд╡рд┐рдХ рд╕реАрдПрд╕рдПрд╕ рдФрд░ рдЬреЗрдПрд╕ рдлрд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рд╕рднреА рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╖рдп рдХреЗ рд╕рдВрд░рдЪрдирд╛рддреНрдордХ рд▓реЗрдЖрдЙрдЯ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рд╕рд╛рде рд╣реА рдЕрд▓рдЧ рд╕реНрдерд╛рдиреАрдп рд╕реАрдПрд╕рдПрд╕ рдФрд░ рдЬреЗрдПрд╕ рдЬреЛ рдЗрд╕ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдбрд┐рдЬрд╛рдЗрди рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдЗрди рд╕рднреА рд╢реИрд▓рд┐рдпреЛрдВ рдФрд░ рд▓рд┐рдкрд┐рдпреЛрдВ рдХреЛ рд╣рдорд╛рд░реЗ рдЕрдкрдиреЗ рдорд┐рдиреАрдлрд╝рд╛рдпрд░ рджреНрд╡рд╛рд░рд╛ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдПрдХрддреНрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд▓реЗрдЖрдЙрдЯ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ:
 <link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->theme->baseUrl . '/css/'. Yii::app()->getLanguage() .'/main.minified.css'; ?>" /> <script type="text/javascript" src="<?php echo Yii::app()->theme->baseUrl . '/js/' . Yii::app()->getLanguage() . '/main_minified.js'; ?>"></script> 


рдЪреВрдБрдХрд┐ Yii::app()->getLanguage() рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╕рд╛рдЗрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рдХреЙрдиреНрдлрд┐рдЧ рдлрд╛рдЗрд▓ рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд▓реЛрдХреЗрд▓ рдХреЛ рд▓реМрдЯрд╛рддрд╛ рд╣реИ, рдереАрдо рд╕реНрдЯреНрд░рдХреНрдЪрд░ рдореЗрдВ рдПрдХ рд╣реА рдирд╛рдо рдХреЗ рдлреЛрд▓реНрдбрд░ рдмрдирд╛рдХрд░ рд╣рдо рдЕрдкрдиреА css рдФрд░ js рдлрд╛рдЗрд▓реНрд╕ рдХреЛ рд╡рд╣рд╛рдВ рд╕реЗрд╡ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдХреЗрд╡рд▓ рдорд┐рдирд┐рдлрд╛рдЗрдЬрд╝рд░ рдХреЛ рдЕрдВрддрд┐рдо рд░реВрдк рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛ рд╣реБрдЖ рд╣реИ, рдЬреЛ рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдПрдХ рдореЗрдВ рдЗрдХрдЯреНрдард╛ рдХрд░рддрд╛ рд╣реИ рддрд╛рдХрд┐ рдпрд╣ рд▓реЛрдХреЗрд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗред рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рдЕрд▓рдЧ рд▓реЗрдЦ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╖рдп рд╣реИред

рдЕрд▓рдЧ-рдЕрд▓рдЧ, рдореИрдВ рд╣рдорд╛рд░реА рд╕рд╛рдЗрдЯреЛрдВ рдкрд░ рдХрд╛рдЙрдВрдЯрд░ рд░рдЦрдиреЗ рдХреЗ рдореБрджреНрджреЗ рдХреЛ рдиреЛрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕реНрдХреНрд░рд┐рдкреНрдЯ, рдЧреВрдЧрд▓ рдПрдирд╛рд▓рд┐рдЯрд┐рдХреНрд╕, рдпреИрдВрдбреЗрдХреНрд╕ рдореЗрдЯреНрд░рд┐рдХ, рдПрдбрдерд┐рд╕ рдФрд░ рдЕрдиреНрдп рд╣реИрдВред рд╡рд┐рднрд┐рдиреНрди рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд▓рд┐рдП, рд╡рд┐рднрд┐рдиреНрди рдХрд╛рдЙрдВрдЯрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред Yii::app()->getLanguage() рд╕рд╛рде рдмреИрд╕рд╛рдЦреА рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рд╕рд╛рдЗрдЯ рдкрд░ рд╡рд╛рдВрдЫрд┐рдд рдХрд╛рдЙрдВрдЯрд░ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рд┐рдЪ рдХрд░реЗрдВ, рд╣рдордиреЗ рдХрд╛рдЙрдВрдЯрд░реЛрдВ рдХреЛ рд╕реНрдерд╛рдиреАрдпрдХрд░рдг рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ред

рдлрд╝рд╛рдЗрд▓реЗрдВ рдмрдирд╛рдПрдБ:
protected/messages/ru/scripts.php
protected/messages/en/scripts.php

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдЙрдиреНрд╣реЗрдВ рдЬреЛрдбрд╝реЗрдВ:
 <?php return array ( 'GoogleAnalitics' => ' <!-- GoogleAnalitics begin --> <script type="text/javascript"> //    RU </script> <!-- GoogleAnalitics end --> ', ); 

рдЕрдм рдореИрдкрд┐рдВрдЧ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╡рд╛рдВрдЫрд┐рдд рд╕рд╛рдЗрдЯ рдХреЗ рд▓рд┐рдП рд╡рд╛рдВрдЫрд┐рдд рдХреЛрдб рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП echo Yii::t('scripts', 'GoogleAnalitics') рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред

рдирд┐рд╖реНрдХрд░реНрд╖

рд╕рд╛рдЗрдЯреЛрдВ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд╣рдорд╛рд░реЗ рддрд░реАрдХреЗ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдЕрдиреНрдп рддрд░реАрдХреЗ рднреА рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рдЦреБрдж рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рддреЗ рд╣реИрдВред

рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

Source: https://habr.com/ru/post/In157877/


All Articles