ম্যাজেন্টো মার্কেটপ্লেস প্রযুক্তিগত পর্যালোচনা প্রতিবেদনের দ্বারা উত্থাপিত সতর্কতা / ত্রুটিগুলি কীভাবে ঠিক করবেন?


25

নতুন ম্যাজেন্টো মার্কেটপ্লেসের সাহায্যে মার্কেটপ্লেসের মাধ্যমে অনুমোদিত এবং উপলব্ধ হওয়ার জন্য একটি জমা দেওয়া এক্সটেনশন বেশ কয়েকটি বৈধতা রাষ্ট্রের মধ্য দিয়ে যায়।

এর মধ্যে একটি হ'ল প্রযুক্তিগত পর্যালোচনা, যা থেকে আপনি নিম্নলিখিতগুলির মতো প্রযুক্তিগত প্রতিবেদন পেতে পারেন:

মার্কেটপ্লেস প্রযুক্তিগত প্রতিবেদন

আপনি দেখতে পাচ্ছেন যে 200+ সতর্কতাগুলি আমার থেকে নরকে ভয় পেয়েছে, ডক্সে উপলব্ধ তালিকাটি বাদ দিয়ে প্রতিটি সতর্কতা ঠিক করতে সহায়তা করার মতো কোনও সংস্থান রয়েছে: http://docs.magento.com/marketplace/user_guide/extensions/ পর্যালোচনা-কোড-বৈধতা html ?


আমার মনে হচ্ছে পিএইচপি কোডস্নিফার ব্যবহার করে এখানে কারও পরামর্শ দেওয়া উচিত এবং ম্যাজেন্টো 2 যে ব্যবহার করে তা মানক ... PSR-2? নিশ্চয় !?
রবি অ্যাভারিল

এটি পিএসআর -1 এবং পিএসআর -2 উভয়ই ব্যবহার করে।
মনীশ

@ ফ্যাফেল, প্লিজ এটি দেখুন, magento.stackexchange.com/questions/192506/…
অভিষেক

@ চাপেল পিএলএস এটি দেখুন:: magento.stackexchange.com/questions/71399/…
অভিষেক

উত্তর:


31

প্রতিবেদনে যাওয়ার এক ঘন্টা পরে আমি নীচের তালিকাটি নিয়ে এসেছি, এটি আমার মনে হয় সবার পক্ষে সহায়ক হতে পারে।

আমি আরও সতর্কতা / ত্রুটিগুলি খুঁজে পাওয়ার সাথে সাথে এটি আপডেট করার চেষ্টা করব:

সতর্কবাণী

রেখাটি 80 টি অক্ষর ছাড়িয়ে গেছে; এক্স অক্ষর রয়েছে

অথবা

লাইন সর্বোচ্চ 100 টি অক্ষরের সীমা অতিক্রম করেছে; এক্স অক্ষর রয়েছে

আমি সেগুলিই সর্বাধিক দেখেছি, সেগুলি স্ব-বর্ণনামূলক a একটি পরিষ্কার এবং পঠনযোগ্য কোড রাখার জন্য কোডিং লাইনগুলি ছোট রাখাই ভাল অনুশীলন।

ফাংশন কলে কমা পরে কোনও স্থান পাওয়া যায় নি

আপনি এমন একটি ফাংশন কল করেছেন যা পরামিতিগুলি গ্রহণ করে এবং কমা পরে কোনও স্থান যোগ করেনি। উদাহরণ: strrchr($bla,".")হওয়া উচিতstrrchr($bla, ".")

প্রত্যাশিত \ "যখন (...) {\ n \"; ... "যখন (...) found n {\ n \" পাওয়া গেছে

প্রত্যাশিত \ "foreach (...) {\ n \"; found "foreach (...) \ n {\ n \" পাওয়া গেছে

প্রত্যাশিত \ "যদি (...) {\ n \"; পাওয়া গেছে if "যদি (...) \ n {\ n found"

প্রত্যাশিত \ "} অন্য {\ n \"; পাওয়া গেছে else "} \ n অন্য {\ n \"

এর অর্থ আপনি এই পিএইচপি বিবৃতিগুলির খোলার বন্ধনীটির আগে একটি লাইন ফিরে এসেছেন।

একটি / অন্য বিবৃতি সহ একটি খারাপ সিনট্যাক্সের উদাহরণ:

if (true)
{
}
else
{
}

হতে হবে

if (true) {
} else {
}

মাল্টি-লাইন ফাংশন ঘোষণার সমাপ্তি বন্ধনী এবং প্রারম্ভিক বন্ধনী একই লাইনে থাকতে হবে

বেশিরভাগ সময়, এটি কনস্ট্রাক্টরে ঘটে যেখানে আপনি এরকম কিছু ঘোষণা করেন:

public function __construct(
    ProductFactory $productFactory,
    Test $test
)
{
}

যদিও এটি হওয়া উচিত:

public function __construct(
    ProductFactory $productFactory,
    Test $test
) {
}

লাইন চরিত্রের শেষটি অবৈধ; প্রত্যাশিত \ "\ n \" তবে পাওয়া গেছে \ "\ r \ n \"

ফাইলের শুরুতে বেশিরভাগ সময় ঘটে থাকে, এটির কারণটি আপনার আইডিই ফেরতের অক্ষরকে এনকোড করে।

পরিবর্তনশীল \ "আপনার_ভেরিযোগ্য \" বৈধ উটের ক্যাপ ফর্ম্যাটে নেই

প্রতিটি পরিবর্তনশীল অবশ্যই উটের ক্যাপ ফর্ম্যাট ব্যবহার করতে হবে, তাই $your_variableহওয়া উচিত$yourVariable

চলক \ "one2Three \" এ সংখ্যা রয়েছে তবে এটি নিরুৎসাহিত করা হয়েছে

আপনার ভেরিয়েবলগুলিতে নম্বর ব্যবহার করা এড়িয়ে চলুন

ইনলাইন নিয়ন্ত্রণ কাঠামো অনুমোদিত নয়

আপনার যেমন ইনলাইন নিয়ন্ত্রণ কাঠামো ব্যবহার করা উচিত নয়:

else $test = true;

আপনার ব্যবহার করা উচিত:

else {
    $test = true;
}

সংজ্ঞার পরে কোনও শ্রেণীর খোলার ব্রেস অবশ্যই লাইনে থাকবে

শ্রেণি ঘোষণা করার সময় আপনি একটি লাইন ফিরে এসেছেন:

class Test
{

আপনার খোলার বন্ধনী একই লাইনে রাখা উচিত:

class Test {

ব্যক্তিগত সদস্য ভেরিয়েবল \ "আপনার পরিবর্তনশীল V" অবশ্যই একটি শীর্ষস্থানীয় আন্ডারস্কোর থাকতে হবে contain

সুরক্ষিত সদস্য ভেরিয়েবল \ "আপনার পরিবর্তনশীল \" অবশ্যই একটি শীর্ষস্থানীয় আন্ডারস্কোর থাকতে হবে

আপনার সুরক্ষিত এবং ব্যক্তিগত সদস্য ভেরিয়েবলগুলিতে আপনার একটি শীর্ষস্থানীয় আন্ডারস্কোর যুক্ত করা উচিত: $_yourVariable

এই দু'জনের বিপরীতে, আপনি যদি আপনার সর্বজনীন চলকটিতে আন্ডারস্কোর যুক্ত করেন তবে আপনি পেতে পারেন:

পাবলিক সদস্য ভেরিয়েবল \ "_ আপনার পরিবর্তনশীল" এ অবশ্যই একটি শীর্ষস্থানীয় আন্ডারস্কোর থাকতে হবে না।

পদ্ধতি প্যারামিটার $ bla কখনও ব্যবহার করা হয় না

আপনি কোনও পদ্ধতিতে একটি প্যারামিটার পাস করেছেন কিন্তু আপনি কখনই এটি ব্যবহার করেন না।

মাল্টি-লাইন ফাংশন ঘোষণা সঠিকভাবে ইন্টেন্ট করা হয়নি; 8 স্পেস প্রত্যাশিত কিন্তু এক্স পাওয়া গেছে

আপনি আপনার ফাংশন ঘোষণার পরামিতিগুলিতে খুব বেশি ইনডেন্টেশন যুক্ত করেছেন:

public function __construct(ProductRepository $productRepository,
                            ListsInterface $listsInterface,
                            Data $helper
) {

হতে হবে:

public function __construct(ProductRepository $productRepository,
    ListsInterface $listsInterface,
    Data $helper
) {

সম্ভাব্য অকেজো পদ্ধতিতে ওভাররাইড সনাক্ত করা হয়েছে

আপনি পরিবর্তনগুলি যুক্ত না করে কোনও পদ্ধতিকে ওভাররাইড করছেন, উদাহরণস্বরূপ:

public function __construct(Context $context) {
    parent::__construct($context);
}

লুপে মডেল এলএসডি পদ্ধতির লোড () সনাক্ত হয়েছে

আপনি load()কোনও লুপের ভিতরে পদ্ধতিটি ব্যবহার করছেন যা প্রস্তাবিত নয় এবং এড়ানো উচিত।

সম্ভবত আপনার কোডটি এর মতো দেখাচ্ছে:

foreach(...) {
    $model->load();
}

আপনি যদি কোনও লুপটিতে কোনও মডেল লোড করছেন তবে এটি কার্য সম্পাদনের দিক থেকে বেশ খারাপ। আপনার যদি কেবল কয়েকটি বৈশিষ্ট্য পুনরুদ্ধার করতে হয় তবে আপনার পরিবর্তে সংগ্রহগুলি ব্যবহার করা উচিত।

ফাংশনের সাইক্লোমেটিক জটিলতা (এক্স) 10 ছাড়িয়ে গেছে; ফাংশন রিফ্যাক্টরিং বিবেচনা করুন

আপনি যদি সাইক্লোমেটিক জটিলতার সাথে পরিচিত না হন তবে আমি আপনাকে এই পোস্টে একটি পড়ার পরামর্শ দিচ্ছি: https ://pd depend.org/docamentation/software-metics/cyclomat-complexity.html । এই সতর্কতার মূলত অর্থ এই যে আপনার ফাংশনে অনেকগুলি লুপ এবং শর্ত রয়েছে।

সরাসরি অবজেক্ট ইনস্ট্যান্টেশন হ'ল ম্যাজেন্টো 2-এ নিরুৎসাহিত করা

আপনি ক্লাসকে ডেকে সরাসরি কোনও বস্তু ইনস্ট্যান্ট করছেন তা এই কারণে ঘটে: উদাহরণস্বরূপ:

new \Zend_Filter_LocalizedToNormalized

আপনি অবজেক্ট ম্যানেজার নির্ভরতা ইনজেকশন বা একটি শেষ অবলম্বন ব্যবহার করা উচিত।

মন্তব্যগুলি একটি টুডো টাস্কটি উল্লেখ করে

আপনার মন্তব্যের একটিতে নিম্নলিখিত @TODOপতাকা রয়েছে ।

সর্বদা সত্য বা মিথ্যা আইএফ বিবৃতি এড়িয়ে চলুন

আপনি একটি শর্ত তৈরি করেছেন যা সর্বদা সত্য বা মিথ্যা বলে মনে হয়।

উদাহরণ স্বরূপ:

$variable = "6";
...
// More code that doesn't change $variable
...
if ($variable)

ত্রুটি

\ "Class \" শ্রেণীর জন্য নেমস্পেস নির্দিষ্ট করা হয়নি।

আপনি use Path\To\Class;আপনার ক্লাসের শুরুতে বিবৃতিটি মিস করছেন ।


1
যদি আমি এটি সঠিকভাবে বুঝতে পারি তবে এই সুপারিশগুলি সমস্ত এম 2 এক্সটেনশনগুলি (এমনকি কোনও ব্যক্তিগত ব্যবহারের জন্যও) বোঝায়?
সিয়ারে উখখলেবাউ

@ সিয়ারে উখলেবাউ হ্যাঁ, আপনি একবার ম্যাজেন্টো মার্কেটপ্লেসে এক্সটেনশন আপলোড করার প্রযুক্তিগত প্রতিবেদনটি পেয়েছেন
রাফেল এ ডিজিটাল পিয়ানোবাদ

1
You should keep the opening brace on the same line:এটা অন্য উপায়ে না? উপায় দ্বারা দুর্দান্ত পোস্ট
ক্লদিউ ক্রেঙ্গা

@ ক্লাডিউ ক্রাইঙ্গা আমি মনে করি আপনি ঠিক বলেছেন আমাকে ডাবল চেক করতে দিন;)
রাফেল ডিজিটাল পিয়ানোবাদ

10k এর বেশি সতর্কতা বার্তা রয়েছে এমন কোনও এক্সটেনশনের মাধ্যমে ধাক্কা দেওয়া কি সম্ভব? অথবা তারা যে সমস্ত সতর্কতা রয়েছে তা প্রত্যাখ্যান করে?
রোল্যান্ড সোস

9

এমইকিউপি 1 বা এমইকিউপি 2 রুলসেটের সাহায্যে কোডস্নিফার ব্যবহার করা (আপনার ম্যাজেন্টোর সংস্করণ অনুসারে) আপনাকে ম্যাগেন্টো রুলসেট সম্পর্কে ধারণা দেবে: https://github.com

এই রুলসেটটি এবং মার্কেটপ্লেসের জমা দেওয়ার প্রক্রিয়াটিতে চলমান একটি সর্বদা সিঙ্কের সাথে পুরোপুরি নয় (যদিও এটি অবশ্যই আদর্শ), তাই আপনি গিথুবের সর্বশেষ সংস্করণটি পাস করলেও কোডস্নিফার ত্রুটির জন্য আপনি প্রত্যাখাত হতে পারেন।

কিছু বেশি সাধারণ "তীব্রতা -10" ত্রুটি (কেবলমাত্র ত্রুটিগুলির জন্য আপনার এক্সটেনশন প্রত্যাখ্যান করা হবে) এবং তাদের তালিকাভুক্ত সুপারিশগুলি অন্তর্ভুক্ত:

পিএইচপি ফাইলের শেষে একটি সমাপ্তি ট্যাগ অনুমোদিত নয়

প্রস্তাবনা: পিএইচপি বন্ধকরণ ট্যাগ সরান।

কল-টাইম পাস-রেফারেন্স কলগুলি নিষিদ্ধ

প্রস্তাবনা: পিএইচপি 5 এর রেফারেন্সগুলিতে ডকুমেন্টেশন পড়ুন এবং আপনার কোডটি রিফেক্টর করুন। তথ্যসূত্র: http://php.net/manual/en/language.references.pass.php

EN _ENV সুপারগ্লোবালের সরাসরি ব্যবহার সনাক্ত করা হয়েছে।

$ _GET সুপারগ্লোবালের সরাসরি ব্যবহার সনাক্ত করা হয়েছে।

Use _POST সুপারগ্লোবালের সরাসরি ব্যবহার সনাক্ত করা হয়েছে।

সরাসরি ব্যবহারের সনাক্ত _RE _RE কিউইএসটি সুপারগ্লোবাল।

Use _SESSION সুপারগ্লোবালের সরাসরি ব্যবহার সনাক্ত করা হয়েছে।

LO গ্লোবালস সুপারগ্লোবালের সরাসরি ব্যবহার সনাক্ত করা হয়েছে।

প্রস্তাবনা: কুকি, সেশন বা অনুরোধের ডেটা পেতে সংশ্লিষ্ট মোড়কজাতীয় বস্তুগুলি ব্যবহার করুন।

ফাংশন সেট_ম্যাজিক_কোটিস_রুনটাইম () অবচিত করা হয়েছে

প্রস্তাবনা: অবহেলিত ফাংশনগুলি ব্যবহার করা উচিত নয় কারণ এগুলি ভবিষ্যতের সংস্করণ থেকে যে কোনও সময় মুছে ফেলা হতে পারে। [সম্ভবত সমস্ত অবমূল্যায়নের জন্য জেনেরিক ত্রুটি]

আইডেন্টিকাল অপারেটর === স্ট্রপস ফাংশনের রিটার্ন মান পরীক্ষার জন্য ব্যবহৃত হয় না

আইডেন্টিকাল অপারেটর === স্ট্রিপস ফাংশনের রিটার্ন মান পরীক্ষার জন্য ব্যবহৃত হয় না

প্রস্তাবনা: এই ফাংশনের রিটার্ন মান পরীক্ষার জন্য === অপারেটরটি ব্যবহার করুন।

ব্যাক কোট স্ট্রিং ধ্রুবকের ভুল ব্যবহার। পিছনে উদ্ধৃতিগুলি সর্বদা স্ট্রিংয়ের অভ্যন্তরে থাকা উচিত।

প্রস্তাবনা: [আলাদা কোনও সুপারিশ নেই। আমি ধারণা করি এটি ব্যাককোটিসের মাধ্যমে সম্পাদন করা রোধ করা]]

[ClassName] শ্রেণিতে _আইসোহেল্ড () এসিএল পদ্ধতি অনুপস্থিত।

প্রস্তাবনা: সুবিধাগুলি সেটিং, পরিচালনা এবং পরিচালনা পদ্ধতি খুব যত্ন সহকারে পরিচালনা করুন। এসিএল সংস্থান প্রতিটি প্রশাসক নিয়ন্ত্রকের জন্য অ্যাডমিনটিএমএল.এমএমএল ফাইলে সংজ্ঞায়িত করা উচিত এবং _আইএসএলওয়েড () পদ্ধতিটি প্রয়োগ করা উচিত।

[এক্সেপশনক্লাসনেম] শ্রেণীর জন্য নেমস্পেস নির্দিষ্ট করা হয়নি।

প্রস্তাবনা: ব্যতিক্রম নাম উল্লেখ করুন।

পিএইচপি সিনট্যাক্স ত্রুটি: কল-টাইম পাস-বাই-রেফারেন্স সরানো হয়েছে

প্রস্তাবনা: সিনট্যাক্স ত্রুটি ঠিক করুন। [এই এক উপরোক্ত সহচর। আমি কল্পনা করি যে অন্য সমস্ত পিএইচপি সিনট্যাক্স ত্রুটির জন্য অনুরূপ জেনেরিক ত্রুটি দেওয়া হয়েছে]

সম্ভাব্য ম্যাজেন্টো 2 ডিজাইনের লঙ্ঘন। টিপিক্যাল ম্যাজেন্টো 1 নির্মাণ সনাক্ত করা হয়েছে।

প্রস্তাবনা: [এটি কোনও প্রস্তাব ছাড়াই আসে, তবে কোডটি বর্ণনা করে যেখানে ম্যাগ :: ব্লাহ বা ম্যাজ_ব্লাহ_ব্লাহ :: ব্লাহের মতো শ্রেণীর ব্যবহার সনাক্ত করা হয় - এই ক্লাসগুলি যা কেবলমাত্র ম্যাজেন্টো 1 তে বিদ্যমান এবং ম্যাগেন্টো 2 তে কাজ করবে না) একটি ভাল ধারণাটি হ'ল রেগেক্সের Mage(\b|_)জন্য এম 1 ব্যবহারের প্রাক-চেক করার জন্য আপনার এম 2 এক্সটেনশনটি অনুসন্ধান করুন ]]

রিসোর্স পিএইচপি 7 এ একটি সংরক্ষিত শব্দ।

প্রস্তাবনা: [আলাদা কোনও সুপারিশ নেই। কেবলমাত্র শব্দের অন্য কোনও কিছুর নামকরণের কাজ করা উচিত। আমি ধারণা করি যে সমস্ত ত্রুটিযুক্ত সংরক্ষিত শব্দের জন্য এই ত্রুটি বিদ্যমান]

খোলার পিএইচপি ট্যাগটি অবশ্যই ফাইলের প্রথম বিষয়বস্তু হতে হবে

প্রস্তাবনা: পিএইচপি খোলার ট্যাগের আগে সমস্ত অক্ষর সরান।

ডাই ল্যাঙ্গুয়েজ কনস্ট্রাক্টের ব্যবহারকে নিরুৎসাহিত করা হয়।

প্রস্থান ভাষা নির্মানের ব্যবহার নিরুৎসাহিত করা হয়।

প্রস্তাবনা: সেটবডি () প্রতিক্রিয়া অবজেক্ট পদ্ধতি ব্যবহার করা উচিত।

ইকো ল্যাঙ্গুয়েজ কনস্ট্রাক্টের ব্যবহারকে নিরুৎসাহিত করা হয়।

মুদ্রণ ভাষা নির্মাণ ব্যবহার নিরুত্সাহিত করা হয়।

প্রস্তাবনা: ক্লাসে প্রতিধ্বনি, শিরোলেখ ইত্যাদির ব্যবহার এড়ানোর জন্য এক্সটেনশনের আর্কিটেকচারটি পরিবর্তন করা উচিত, প্রতিক্রিয়া অবজেক্টের সেটবডি () পদ্ধতি ব্যবহার করার বিষয়টি বিবেচনা করুন।

ইভাল () এর ব্যবহার নিরুৎসাহিত করা হয়

প্রস্তাবনা: ইভাল () ব্যবহার করা এড়িয়ে চলুন।


এই ত্রুটিগুলির বিপরীতে, যা আপনার এক্সটেনশানটিকে প্রত্যাখ্যান করে, আপনার এক্সটেনশনের কোডটি উন্নত করতে সহায়তা করার জন্য সতর্কতা বর্তমানে কেবল সৌজন্য হিসাবে তালিকাবদ্ধ করা হয়েছে। আপনাকে সতর্কতার জন্য প্রযুক্তি পর্যালোচনা থেকে প্রত্যাখ্যান করা হবে না, তবে অনেকগুলি রয়েছে।

অবশ্যই, এই নিয়মটি ভবিষ্যতে আরও কড়া করা যেতে পারে এবং কোডস্নিফার রুলসেটটি ধ্রুব পর্যালোচনার অধীনে থাকে, সুতরাং আপনি কত সতর্কতা সমাধান করতে পারেন তা দেখা সর্বদা একটি ভাল পরিকল্পনা। সতর্কতাগুলি আপনার কোডবেস সহ সিস্টেমিক সমস্যাগুলিও নির্দেশ করতে পারে।


প্রযুক্তিগত পর্যালোচনা থেকে প্রত্যাখার কয়েকটি কারণ বর্তমানে অনলাইন প্রতিবেদনে প্রদর্শিত হবে না এবং কেবল ইমেলটিতে দেওয়া হয়েছে।

কপি-পেস্ট লঙ্ঘন এবং ম্যালওয়ার সনাক্তকরণের মতো জিনিসগুলিতে কেবল ইমেলটিতে প্রদর্শিত বার্তাগুলি থাকবে যা আপনাকে জানাতে পারে যে আপনার এক্সটেনশনটি গ্রহণ করা হয়নি, তাই ইমেলটি সাবধানে পড়ুন

এই ইমেলগুলির একটি সংরক্ষণাগার বর্তমানে বিকাশকারী পোর্টাল থেকে দৃশ্যমান নয়, সুতরাং আপনি যদি সেগুলি না পড়ে মুছে ফেলেন বা জঞ্জালে ফাইল করেন তবে সেগুলি চলে যায়।

ম্যাজেন্টোর স্তরের 1 পর্যালোচকরা কখনও কখনও এই ইমেলটিতে অতিরিক্ত তথ্য রাখে, তারা কেবল সহায়ক জিনিসগুলির বিষয়ে জানতে পারে যা তারা সম্ভবত জানতে চেয়েছিলেন যেমন "এই অ্যারে কী 'বিচ্ছিন্ন' সম্ভবত 'সার্ভার' হওয়া উচিত," বা তাদের প্রত্যাখ্যান এবং পরামর্শের যুক্তিগুলি কীভাবে এটি দ্রুত সমাধান করা যায়, যেমন "আপনি একটি পুরো ম্যাজেন্টো কোর ফাইলটি অনুলিপি করে সবেমাত্র ক্লাসপাথটি পরিবর্তন করেছেন: পরিবর্তে আপনি এটি একটি শ্রেণি পছন্দসই সেটিংসের মাধ্যমে প্রতিস্থাপন করতে পারেন।", বা "আপনি পুরো দু'একটি পরিবর্তন করার জন্য পুরো ম্যাগেন্টো কোর ফাইলটি অনুলিপি করেছেন পাবলিক ফাংশন: আপনি এর পরিবর্তে প্লাগইন ব্যবহার করতে পারেন "

আপনি যদি এগুলি না পড়েন এবং কেবল কোডস্নিফার রিপোর্টটি দেখুন তবে আপনি ভুল সমস্যাগুলি সমাধান করার চেষ্টা করতে পারেন।


মনে রাখবেন যে unescaped output detectedবার্তাটি @escapeNotVerifiedবা @noEscapeমন্তব্যগুলি ব্যবহার করে ডজ করা উচিত নয় । এটি সম্ভবত ভবিষ্যতের সংস্করণগুলিতে ম্যাগেন্টোতে বাতিল করা হবে। পরিবর্তে, নিম্নলিখিতগুলির একটি ব্যবহার করুন:

  • একক উদ্ধৃতিতে কোনও স্থির স্ট্রিং।
  • ডাবল উদ্ধৃতিতে একটি স্ট্যাটিক স্ট্রিং, কোনও ইনলাইন ভেরিয়েবল নেই।
  • [প্রস্তাবিত] একটি মান থেকে অব্যাহতি পদ্ধতি এক সঙ্গে পলান \Magento\Framework\View\Element\AbstractBlock( escapeHtml(), escapeUrl(), escapeQuote(), escapeXssInUrl())।
  • একটি সংখ্যার প্রকারে কাস্ট করা একটি মান (কমপক্ষে বুল এবং ইনট, সম্ভবত অন্যরা?)
  • নামের মতো "এইচটিএমএল" শব্দের সাথে যে কোনও পদ্ধতির কল printBannerHtml()। এই এক আপত্তি করবেন না! আপনার blahHtml()পদ্ধতিটি সত্যই সমস্ত ভেরিয়েবলগুলি থেকে রেহাই পেয়েছে তা নিশ্চিত করুন ।

আমার এক্সটেনশান প্রদর্শনের সতর্কতা তবে উপরের কোনওটি কি সতর্কতার কারণে আমার এক্সটেনশানটিকে প্রত্যাখ্যান করা সম্ভব?
সঞ্জয় গোহিল

আমি কিছুক্ষণ আগে এটি পোস্ট করেছি - এরপরে নতুন যুক্ত হতে পারে। আপনি যখন আপনার বিকাশকারী অ্যাকাউন্টে লগ ইন করেন, এক্সটেনশনে ক্লিক করুন এবং ত্রুটি লগটি দেখুন, আপনি কী বার্তাটি দেখছেন এবং সেগুলি কোন স্তরের ত্রুটি রয়েছে? যদি তারা তীব্রতা 10 না হয় তবে অন্য কোনও কারণে আপনাকে প্রত্যাখ্যান করা হতে পারে। প্রত্যাখ্যান ইমেল কি বলে?
দেবী মরগান

6

ত্রুটি:

আনস্কেপড আউটপুট সনাক্ত হয়েছে

.Phtml ফাইলে ত্রুটি

<ul class="form-list" id="payment_form_<?php echo $code ?>" style="display:none;">

আপনি চিৎকার ব্যবহার:

<ul class="form-list" id="payment_form_<?php /* @noEscape */ echo $code ?>" style="display:none;">

Http://devdocs.magento.com/guides/v2.0/frontend-dev-guide/templates/template-security.html#escape-function- for- templates- এর জন্য টেমপ্লেট এক্সএসএস সুরক্ষা দেখুন


এটি অসাধারণ প্রোগ্রামিং স্টাইল। দয়া করে এভাবে @noEscapeএবং @escapeNotValidatedআদেশগুলি অপব্যবহার করবেন না : যদি আপনি এটি করেন তবে এগুলি এমইকিউপি সিস্টেম দ্বারা অবহেলিত এবং তার পরে প্রত্যাখ্যান হওয়ার সম্ভাবনা রয়েছে। আপনার ডেটা থেকে বাঁচার জন্য আরও ভাল উপায়ের বিস্তৃত অ্যারের জন্য আমার উত্তরটির নীচে দেখুন।
দেবী মরগান

1
@ দেউই মরগান: আপনার মূল্যবান তথ্যের জন্য ধন্যবাদ।
সংকর_কি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.