والقول الصحيح في سبب نزول الآية هو رغبة النبي - صلى الله عليه وسلم - في الاستغفار لأمه عندما زار قبرها في عمرته، وإلا كان في طلبه عليه الصلاة والسلام الاستغفار لأمه بعد نزول هذه الآية إشكال، لأن زيارة النبي - صلى الله عليه وسلم - لقبر أمه كان بعد ما هاجر إلى المدينة، ووفاة عمه واستغفاره له في مكة، فكيف يستغفر النبي - صلى الله عليه وسلم - لأمه وهو قد نهي عنه قبل الهجرة؟
أجاب عن ذلك ابن حجر - رحمه الله تعالى - فقال: ويحتمل أن يكون نزول الآية تأخر وإن كان سببها تقدم، ويكون لنزولها سببان: متقدم وهو أمر أبي طالب، ومتأخر وهو أمر آمنة، ويؤيد تأخير النزول ما تقدم في تفسير سورة براءة من استغفاره - صلى الله عليه وسلم - للمنافقين حتى نزل النهي عن ذلك، فإن ذلك يقتضي تأخير النزول وإن تقدم السبب، ويشير إلى ذلك أيضًا قوله في حديث الباب: (وأنزل الله في أبي طالب: {إِنَّكَ لَا تَهْدِي مَنْ أَحْبَبْتَ} لأنه يشعر بأن الآية الأولى نزلت في أبي طالب وفي غيره والثانية نزلت فيه وحده.
والذي يظهر أن هذا القول هو الراجح في دفع موهم التعارض لخلوه من المعارض، والله أعلم.
وأما ما ذهب إليه ابن المنير بتأويل الاستغفار إلى الشفاعة فقال عنه ابن حجر - رحمه الله: فإن الشفاعة لأبي طالب في تخفيف العذاب لم تُردّ، وطلبها لم يُنه عنه، وإنما وقع النهي عن طلب المغفرة العامة، وإنما ساغ ذلك للنبي - صلى الله عليه وسلم - اقتداء بإبراهيم في ذلك، ثم ورد نسخ ذلك.
وبذلك يتبين عدم وجود أي تعارض بين الآية والحديث وأن ما حدث من النبي - صلى الله عليه وسلم - كان قبل نزول آية النهي عن الاستغفار للمشركين، والله تعالى أعلم.