Hi,
we had an Mp3 Quran WordPress plugin which was removed from the WordPress team, on request to re-activate again plugin they sent me the below issues that need to be fixed. 4 issues mentioned below. please read the details. issues need to fix on anydesk only.
1- ## Undocumented use of a 3rd Party or external service
We permit plugins to require the use of 3rd party (i.e. external) services, provided they are properly documented in a clear manner.
We require plugins that reach out to other services to disclose this, in clear and plain language, so users are aware of where data is being sent. This allows them to ensure that any legal issues with data transmissions are covered. This is true even if you are the 3rd party service.
In order to do so, you must update your readme to do the following:
• Clearly explain that your plugin is relying on a 3rd party as a service and under what circumstances
• Provide a link to the service .
• Provide a link to the service terms of use and/or privacy policies.
Remember, this is for your own legal protection. Use of services must be upfront and well documented.
Example(s) from your plugin:
mp3-quran/[login to view URL] $mp3Translations_sounds_8[] = array("19","[login to view URL]".$language"/[login to view URL]","[login to view URL]");
mp3-quran/[login to view URL] $mp3Translations_sounds_8[] = array("4","[login to view URL]".$language."/[login to view URL]","[login to view URL]");
-------------------------------------------------------------------
2- ## Internationalization: Don't use variables or defines as text, context or text domain parameters.
In order to make a string translatable in your plugin you are using a set of special functions. These functions collectively are known as "gettext".
There is a dedicated team in the WordPress community to translate and help other translating strings of WordPress core, plugins and themes to other languages.
To make them be able to translate this plugin, please do not use variables or function calls for the text, context or text domain parameters of any gettext function, all of them NEED to be strings. Note that the translation parser reads the code without executing it, so it won't be able to read anything that is not a string within these functions.
For example, if your gettext function looks like this...
esc_html__( $greetings , 'plugin-slug' );
...the translator won't be able to see anything to be translated as $greetings is not a string, it is not something that can be translated.
You need to give them the string to be translated, so they can see it in the translation system and can translate it, the correct would be as follows...
esc_html__( 'Hello, how are you?' , 'plugin-slug' );
This also applies to the translation domain, this is a bad call:
esc_html__( 'Hello, how are you?' , $plugin_slug );
The fix here would be like this
esc_html__( 'Hello, how are you?' , 'plugin-slug' );
Also note that the translation domain needs to be the same as your plugin slug.
What if we want to include a dynamic value inside the translation? Easy, you need to add a placeholder which will be part of the string and change it after the gettext function does its magic, you can use printf to do so, like this:
printf(
/* translators: %s: First name of the user */
esc_html__( 'Hello %s, how are you?', 'plugin-slug' ),
esc_html( $user_firstname )
);
You can read [login to view URL] for more information.
Example(s) from your plugin:
mp3-quran/[login to view URL] __('You do not have sufficient permissions to access this page.');
------------------------------------------------------------------------------
3- ## Generic function/class/define/namespace/option names
All plugins must have unique function names, namespaces, defines, class and option names. This prevents your plugin from conflicting with other plugins or themes. We need you to update your plugin to use more unique and distinct names.
A good way to do this is with a prefix. For example, if your plugin is called "Easy Custom Post Types" then you could use names like these:
• function ecpt_save_post()
• class ECPT_Admin{}
• namespace ECPT;
• update_option( 'ecpt_settings', $settings );
• define( 'ECPT_LICENSE', true );
• global $ecpt_options;
Don't try to use two (2) or three (3) letter prefixes anymore. We host nearly 100-thousand plugins on [login to view URL] alone. There are tens of thousands more outside our servers. Believe us, you’re going to run into conflicts.
You also need to avoid the use of __ (double underscores), wp_ , or _ (single underscore) as a prefix. Those are reserved for WordPress itself. You can use them inside your classes, but not as stand-alone function.
Please remember, if you're using _n() or __() for translation, that's fine. We're only talking about functions you've created for your plugin, not the core functions from WordPress. In fact, those core features are why you need to not use those prefixes in your own plugin! You don't want to break WordPress for your users.
Related to this, using if (!function_exists('NAME')) { around all your functions and classes sounds like a great idea until you realize the fatal flaw. If something else has a function with the same name and their code loads first, your plugin will break. Using if-exists should be reserved for shared libraries only.
Remember: Good prefix names are unique and distinct to your plugin. This will help you and the next person in debugging, as well as prevent conflicts.
Analysis result:
# This plugin is using the prefix "mp3_playlist" for 6 element(s).
# Looks like there are elements not using common prefixes.
mp3-quran/[login to view URL] function mp3Translations_get_languages
mp3-quran/[login to view URL] function mp3Translations_get_sounds
mp3-quran/[login to view URL] $sora_names;
mp3-quran/[login to view URL] $languages;
mp3-quran/[login to view URL] function mp3Translations_sounds_loop
------------------------------------------------
4- ## Allowing Direct File Access to plugin files
Direct file access is when someone directly queries your file. This can be done by simply entering the complete path to the file in the URL bar of the browser but can also be done by doing a POST request directly to the file. For files that only contain a PHP class the risk of something funky happening when directly accessed is pretty small. For files that contain procedural code, functions and function calls, the chance of security risks is a lot bigger.
You can avoid this by putting this code at the top of all PHP files that could potentially execute code if accessed directly :
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
Example(s) from your plugin:
mp3-quran/[login to view URL]
Hello
I'm a WordPress Plugin expert and FULL-Time Developer. I have checked the job description and I have some queries about your Project
Let me know when you are available to discuss further
Thanks
Azad
As a devout Muslim and knowledgeable Quran enthusiast, I understand how crucial it is to have digital platforms that can provide reliable access to vital Islamic resources. My experience in PHP web development with a specialization in WordPress makes me an ideal candidate for resolving the issues that your Mp3 Quran WordPress plugin faces.
In tackling the first issue, I will ensure that your plugin is compliant with WordPress guidelines of properly documenting the use of 3rd-party services. Clear explanations about relying on TrueMuslims as a service and links to their terms of use and privacy policies will be created to conform, protecting you legally.
For the second issue raised by the WordPress community team; Translation plays a pivotal role in reaching a global audience. I understand this and will encompass all necessary measures needed to make your plugin translatable without any ambiguity. By exclusively using strings for context, text domain and text parameters, I'll enable users across various languages to fully utilize your valuable plugin.
Having trouble with your Quran WordPress plugin?
I can diagnose and fix any issues you're facing to ensure a smooth user experience.
My expertise includes:
Troubleshooting Quran plugin functionality
Fixing display or audio errors
Ensuring compatibility with your WordPress theme
Let's discuss the problem and get your Quran plugin working perfectly!
As an experienced and skilled full-stack developer with over a decade in the field, I am well-acquainted with the nuances of WordPress plugins such as the Mp3 Quran plugin you need assistance with. To address the first issue, I understand the utmost importance of disclosing any third-party reliance to protect both your and your users' legal interests. Rest assured, I will undertake the task of updating your plugin's readme to clearly document its dependency on True Muslims as a service and provide all necessary links to their terms of use and privacy policies.
Regarding internationalization, I am familiar with the vital necessity of making strings translatable within plugins. Having worked extensively with WordPress's translation team, I know how they operate and what they require to smoothly translate plugins into different languages. I guarantee no usage of variable or function calls for text, context or text domain parameters that impede their translation efforts. Clever utilization of placeholders in combination with functions like printf makes dynamic value inclusion an effortless process.
With my extensive experience as a WordPress developer and specific skills in plugin creation, I am confident I can address the specific issues that have led to your Quran WordPress plugin being temporarily removed. For instance, when it comes to the first issue of 'Undocumented use of a 3rd Party or external service', transparency is key. I have always ensured that plugins using any external services are properly documented to enhance clarity for users. Thus, I understand the need for your plugin readme to:
• Explain in what scenarios the use of the 3rd party service is relevant,
• Provide direct links to the specific service's terms of use/privacy policy.
Regarding the second issue, Internationalization, I believe in making plugins user-friendly even in multilingual contexts. My knowledge of gettext functions will come in handy to address this matter effectively. I grasp the importance of translating both static and dynamic parts of the strings used and will incorporate placeholders where necessary to facilitate optimal translations.
Fix your Quran Plugin issue with me!
Hey there,
I have a strong expertise of WordPress website customization and plugin development. It's a very easy and quick fix for me.
Let's connect over a chat initiated.
Thanks.
Warm Regards,
Rohan.
Hello!
I'm a WordPress developer with extensive experience in creating custom plugins and integrating third-party APIs. I'm excited to offer my services for your project. I have the skills and experience to meet your key requirements.
I can assist you with fixing these issues. Let's connect via AnyDesk to address the concerns raised by the WordPress team. Looking forward to resolving these issues promptly and getting your plugin back on track.
Expertise:
- Integration with Third-Party APIs
- Strong Proficiency in WordPress Development
- API Integration Expertise
- Custom Plugin Development
I'm ready to embark on this project and create a WordPress custom plugin that perfectly aligns with your needs.
I'm looking forward to helping you achieve your project's goals.
Regards,
Hello there, I can start right away. Let's connect over the chat and initiate
your project immediately. Looking forward to working with you.
Best Regards,
Aliza A
Right off the bat, I would like to assure you that as a seasoned and versatile Full Stack Web Developer with a 9+ year experience, I am very much well-equipped to address the four vital issues hampering your Quran WordPress plugin. Particularly, the task of utilizing & documenting third-party services is an area I specialize in. Over my long career, I've been involved with multiple projects that necessitated integrating various APIs seamlessly and documenting them carefully.
eeting formal requirements only for your upcoming project isn't enough; what a client truly needs is an end product that works smoothly, draws minimal maintenance and upkeep, and most importantly, does not step on other existing WordPress plugins or themes' toes. Having tackled similar matters repeatedly in the past, be assured that with my unique function naming skills, I will provide steamlined development for your plugin while keeping potential clashes with other plugins at bay.
Lastly, Internationalization and ensuring proper usage of defintions in my projects are nigh-memetic for me. It's imperavite for string translations to be clean and efficient. Equipped with efficiencies garnered from having taken charge of 80+ freelance projects with a 100% success scorehiring me signifies confirmance to provide you quality work, timely delivery and adherence to WordPress guidlines that will foster your Qurna WooCommerce plugn's revival! Let's dive into ypthe project together and breathe life back in!
Hello,
I can help you with your project that need a WordPress website for your limo transportation service,
I am ready to start work right now and I can offer you the best price.
Portfolio: https://www.freelancer.com/u/farhatwajahat96
Hit the chat button to have further discussion.
Thanks.
With over 6 years of professional experience in web development, particularly in [programming languages], I bring the perfect combination of technical expertise and commitment to custom solutions for your Quran WordPress plugin issues. I heed the importance given to security by implementing latest best practices, a quality your project must exhibit. Moreover, my proficiency in backend and frontend development ensures a comprehensive and consistent approach that gives you an outstanding user experience across devices.
By choosing me, you gain the benefit of my Full-Stack mastery that has been constantly tested and proven with each project I undertake. I am ready to address any issue head-on; be it properly documenting third-party service usage as demanded or resolving any internationalization concerns. Throughout my career, I have always believed that transparent and effective communication is an integral part of development process; which is why I maintain open lines of communication at all times.
Testimonials from my clients, like Mohamed Hagag who vouched for the boost in their sales after working with me, speak volumes about my professionalism and dedication to delivering quality work on time. Can we get started today?
Hi,
I can assist you with fixing the issues mentioned for your Mp3 Quran WordPress plugin. I will work on resolving these on AnyDesk to ensure immediate fixes.
1- I will update the readme file to clearly explain the use of 3rd party services and provide links to the service terms and privacy policies.
2- I will ensure all strings are translatable by not using variables or defines as text, context, or text domain parameters.
3- I will update function and class names to ensure uniqueness and avoid conflicts with other plugins. This includes adding a unique prefix.
4- I will implement a security measure to prevent direct file access to plugin files.
Let's connect on AnyDesk to proceed with the fixes.
Regards,
Maira Z.
Hey! { Quran WordPress Plugin issues need to be fixed}
Having thoroughly reviewed your project details I believe I have a clear understanding of what you're looking for. I am ready to resolve the issues with your Mp3 Quran WordPress plugin efficiently and securely, ensuring compliance with WordPress guidelines and enhancing functionality.
**I offer a wealth of experience as a FULL STACK WEB DEVELOPER, backed by over 5+ years of solid experience. **
----------------------------------------------&&&--------------------------------------------------------
✓ Please knock me in chat as I have some queries regarding the project to proceed immediately.
✓ I'm ready to tackle your project within your specified BUDGET and TIMELINE.
----------------------------------------------&&&--------------------------------------------------------
{With Appreciation}
As a professional with extensive experience in PHP and WordPress plugin development, I'm confident that I can resolve the issues with your Quran WordPress plugin. I have an in-depth understanding of the unique requirements and guidelines set by WordPress and I can follow them to ensure this plugin complies. Specifically, let's address the use of 3rd party services - we'll update the readme details to provide clear documentation on any external services used to access data.
On internationalization: ik! Translating strings for different languages is not a matter of just replacing some text. I am well-versed in using "gettext" functions properly, understanding that using variables or function calls for text, context, or domain parameters won't be translatable. Rest assured, your plugin will be effectively optimized for translations into multiple languages.
With regards to ensuring uniqueness of function, class, define, namespace and option names, you don't need to worry at all. I've always made it a point to avoid potential conflicts with other plugins or themes by ensuring all my work has distinctive names. You can sit back and relax knowing that everything from my end will be delivered promptly and marked by thoroughness. Based on my skills mentioned above, you can trust me to take care of your project with utmost precision and dedication. Let's make your Quran Wordpress project the best it can be together.
To resolve these issues, you'll need to go through your plugin code and make the necessary modifications. I can assist you with this process on AnyDesk. Please provide me with the necessary access, and we can proceed with fixing these issues together. Looking forward to collaborate with you .
Hi there,
I understand the issues with your WordPress plugin that need to be fixed in order to be reactivated by the WordPress team. I'll address each of the four issues mentioned:
1. I'll document the use of any third-party services clearly in the plugin's readme file, including links to the service, terms of use, and privacy policies.
2. I'll ensure that variables or defines are not used as text, context, or text domain parameters for translation functions, following WordPress guidelines for internationalization.
3. I'll update function/class names to use unique prefixes, preventing conflicts with other plugins and themes.
4. I'll add code to prevent direct file access to plugin files, enhancing security.
I'll address these issues efficiently and effectively via AnyDesk. Let's get your plugin back on track and ready for reactivation on the WordPress platform!
Warm Regards,
Sawan